我在我的Rails应用程序中使用Mongoid作为数据库。我已经有了这个用户模型一段时间,现在我刚刚创建了一个新的Preference模型,其中User has_one首选项和Preference belongs_to用户。如何为数据库中的每个现有用户创建一个Preference实例?
解决方案:
我只是去了Rails控制台并运行了以下内容:
for user in User
unless Preference.find_by(user_id: user.id)
p = Preference.new(id: user.id, user_id: user_id)
p.save
end
end
从未想象过这可能很容易:)
答案 0 :(得分:1)
它将为每个创建的用户创建before_create :set_preference
def set_preference
build_preference(id: self.id, user_id: self.id, email: self.email)
end
,并且用户的ID将与首选项相同!
在 User.rb
中custom