All table must be created manually or (preferably) in a migration. By
default (name conventings can be configured to some extent), habtm
expects a table named recipes_tags (alphabetical order) with a
recipe_id field and a tag_id field AND NOTHING ELSE.
So if you are creating it in a migration, you have to make sure you
don't get an id field. It's easy for that to happen since migrations
add it silently by default. You will want to add :id => false when you
call create_table in the migration