我有2个型号。工作和用户。用户has_many :jobs
和作业belongs_to :user
我是否可以在不定义用户的情况下使用Job.create(location: "test")
创建作业记录?如果我现在尝试这个,我会收到Couldn't find User with 'id'=
错误。我认为这是因为这种关联。
如果没有用户名,我可以这么做吗?我想稍后再添加user_id。
谢谢!
答案 0 :(得分:1)
要明确,是这是可能的。
模型中的关联仅用于在数据表中设置foreign keys
。因此,如果您想创建Job
(尽管它为belongs_to :user
),您可以设置所需的所有属性,然后稍后更新:user_id
。
这是一个很好的reference:
这显示了典型belongs_to
/ has_many
关联的数据表结构。在关联这两个对象时,您需要使用正确的foreign_key
,您可以根据需要填充它们。
答案 1 :(得分:0)
道歉我意识到这是我的代码的一个不同部分,不允许我这样做。你可以轻松地做到这一点。