当我在迁移中使用references:foo时,生成的列称为foo_id.做引用之间实际上有什么区别:foo和只做整数:foo_id?也许在幕后发生了一些事情来强制执行数据库级别的关系?
解决方法
结果与您的具体情况相同;你是对的.但引用允许a:polymorphic => true选项,它将自动在表中创建foo_type列作为字符串.
从语义上讲,如果您尝试使迁移更好地反映数据库中表之间的关系,则引用会更好.
从语义上讲,如果您尝试使迁移更好地反映数据库中表之间的关系,则引用会更好.