我有一个检查现有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?
答案 0 :(得分:2)
我认为你不能,即便如此,我认为你不应该这样做。如果您在未创建记录的情况下为用户分配id
,则最终保存记录时可能会id
。
保存用户,然后构建和保存个人资料有什么问题?