I'm using Rails 3.0.6/Ruby 1.8.7 and I've been trying to get the acts_as_taggable_on (2.0.6) gem to work but it seems to fail on the default migration. Log:
== ActsAsTaggableOnMigration: migrating ======================================
-- create_table(:tags)
-> 0.3175s
-- create_table(:taggings)
rake aborted!
An error has occurred, all later migrations canceled:
Mysql2::Error: Can't create table 'project_development.taggings' (errno: 150):
CREATE TABLE `taggings` (`id` int(11) DEFAULT NULL auto_increment PRIMARY KEY,
`tag_id` int(11), `taggable_id` int(11), `taggable_type` varchar(255), `tagger_id`
int(11), `tagger_type` varchar(255), `context` varchar(255), `created_at` datetime,
FOREIGN KEY (`tag_id`) REFERENCES `tags` (`id`), FOREIGN KEY (`taggable_id`) REFERENCES
`taggables` (`id`), FOREIGN KEY (`tagger_id`) REFERENCES `taggers` (`id`)) ENGINE=InnoDB
So it looks like the :polymorphic => true attribute does not work as intended. Google doesn't seem to be very helpful (similar bug reported eg http://www.ruby-forum.com/topic/194219). Any way to fix it? Gem alternatives?
SOLVED automatic_foreign_key conflicts with this gem