gpt4 book ai didi

sql - 使用主键和外键的 Ruby on Rails 迁移

转载 作者:搜寻专家 更新时间:2023-10-30 22:13:15 25 4
gpt4 key购买 nike

我刚刚启动 ROR 并为 SQLite 数据库制作不同的表,并且在自动生成表 ID 和外键方面遇到了一些麻烦。为了创建我的表,我使用了“rails generate scaffold”命令,后跟我需要的属性。我去了 db/migrate 目录并查看了我刚刚定义的内容。但我不明白我应该如何明确引用外键。我习惯使用 Oracle,所以我通常会在创建过程中的第一步执行此过程,并且已经完成了。

例如,我有一个用户表,其中包含一些常规属性,例如用户名、密码等。我还有一个订单表,其中包含属性 transactionID(自动生成)、userID(我希望这是一个 FK), PartNo(产品表中的 FK 键)。我不明白的是如何使用 Users 表中自动生成的键并将其作为外键包含在 Orders 表中。

此外,我在其他地方读到,如果我放入一行代码,例如

t.integer user_id

在我的 create_orders.rb 文件中它会自动知道这是一个外键!?

我觉得这可能真的很简单,但我遗漏了一些东西。这是我第一次使用 Rails,我想我必须通过 SQL 直接定义外键。任何帮助将不胜感激。如果我能解决这个问题,我会节省很多时间。

最佳答案

完成此操作后,在您的 Order 模型上,您将使用 belongs_to :user 生成关系并利用外键。

如果您希望能够从User 转到Order,您很可能是一对多的,所以您必须执行用户 上有_many :orders

Here is the documentation用于 Rails 中的关联。和 here is the specific documentation对于 belongs_tohas_one

关于sql - 使用主键和外键的 Ruby on Rails 迁移,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19820775/

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