Mis*_*hko 7 ruby-on-rails foreign-keys ruby-on-rails-3
据我所知,默认情况下id会创建字段,还会创建:PRIMARY KEY (id ).
外键怎么样?
我有Shops和Products表和以下关联:
Shop: has_many :products
Product: belongs_to :shop
Run Code Online (Sandbox Code Playgroud)
在Product我也有:
t.integer "shop_id"
Run Code Online (Sandbox Code Playgroud)
这意味着是外键,还有:
add_index("products", "shop_id")
Run Code Online (Sandbox Code Playgroud)
但是,如果我导出数据库,我只看到:
KEY `index_products_on_shop_id` (`shop_id`)
Run Code Online (Sandbox Code Playgroud)
我该怎么做才能添加
FOREIGN KEY (`shop_id`) REFERENCES Shop(`id`)
Run Code Online (Sandbox Code Playgroud)
?
Wol*_*ang 16
您可以使用外国人 gem来为您的应用程序添加外键.要开始,请将以下内容添加到您的Gemfile
gem "foreigner"
Run Code Online (Sandbox Code Playgroud)
之后,您可以轻松地在迁移中添加外键,如下所示:
add_foreign_key :products, :shops
Run Code Online (Sandbox Code Playgroud)
这将增加从外国product.shop_id来shop.id.有关更多选项(如不同命名的键或自引用表),请参阅文档.
| 归档时间: |
|
| 查看次数: |
4929 次 |
| 最近记录: |