【发布时间】:2017-02-23 17:54:36
【问题描述】:
我的 MySQL 数据库中有一个 users 表。在我的 rails 4 应用程序中,我创建了一个 Permission 模型,如下所示:
rails g model Permission user:references privilege:references
当我运行迁移以创建权限表时,该表确实在数据库中创建,但出现以下错误:
== 20170223171936 CreatePermissions: migrating ================================
-- create_table(:permissions)
rake aborted!
StandardError: An error has occurred:
Mysql2::Error: Cannot add foreign key constraint: ALTER TABLE `permissions` ADD CONSTRAINT `fk_rails_d9cfa3c257`
FOREIGN KEY (`user_id`)
REFERENCES `users` (`id`)
由于用户表已经存在,我很困惑为什么在权限表中创建外键失败。这可能是什么问题?
【问题讨论】:
标签: mysql ruby-on-rails ruby-on-rails-4 activerecord