0

我有一个简单的方法来检查现有的User,如果没有找到,它会创建它并且还会创建一个Profile对象。

由于配置文件需要user_id保存,如果用户不存在,我需要以某种方式使用 ID 初始化用户。

我最终得到了这样的东西,但这并不是user_id在初始化用户时预设的。

 def create_or_update_user(user)
   user_object = User.find_or_initialize_by_external_id(user['external_id'])

   if user_object.new_record?
     user_profile = user_object.build_profile(params)
   end
   user_object.save

 end

知道如何在初始化用户记录时设置 ID 吗?

4

1 回答 1

2

我不认为你可以,即使这样我认为你也不应该。id如果您在不创建记录的情况下分配给您的用户,id那么在您最终保存它时可能会有机会。

保存用户,然后构建和保存配置文件有什么问题?

于 2012-12-10T21:55:35.470 回答