gpt4 book ai didi

ruby-on-rails - 是什么在 Ruby on Rails 3 中创建了 FOREIGN KEY 约束?

转载 作者:行者123 更新时间:2023-12-04 10:05:49 25 4
gpt4 key购买 nike

我知道默认情况下 id字段已创建,并且:PRIMARY KEY (身份证 ) .

外键呢?

我有 ShopsProducts表和以下关联:

Shop:    has_many :products
Product: belongs_to :shop

Product我也有:
t.integer "shop_id"

这意味着是外键,还有:
add_index("products", "shop_id")

但是,如果我导出数据库,我只会看到:
KEY `index_products_on_shop_id` (`shop_id`)

我应该怎么做才能添加
FOREIGN KEY (`shop_id`) REFERENCES Shop(`id`)

?

最佳答案

您可以使用 foreigner gem 用于向应用程序添加外键。要开始,请将以下内容添加到您的 Gemfile

gem "foreigner"

之后,您可以轻松地在迁移中添加外键,如下所示:
add_foreign_key :products, :shops

这将添加来自 product.shop_id 的外国人至 shop.id .有关更多选项,例如不同命名的键或自引用表,请参阅文档。

关于ruby-on-rails - 是什么在 Ruby on Rails 3 中创建了 FOREIGN KEY 约束?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4406075/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com