具体来说,记录拥有并且属于许多用户,用户可以创建记录,如果已经存在,则将自己添加到记录所拥有的用户。
答案 0 :(得分:0)
在用户模型中定义了以下两种方法:
def self.update_or_create(attributes)
assign_or_initialize(attributes).save
end
def self.assign_or_initialize(attributes)
obj = first || new
obj.assign_attributes(attributes)
obj
end
然后你就可以使用它了:
User.where(email: "test@example.com").update_or_create(name: "abc")