В моей процедуре регистрации пользователя у меня есть этот код:
@user = User.new(attribs)
@user.build_inventory(:max_slots => 10) # create the user inventory, starting with 10 slots
success = @user && @user.save
if success && @user.errors.empty?
Это прекрасно работает при создании инвентаря и привязки пользователя к этому инвентарю.Тем не менее, теперь я хочу добавить новый инвентаризатор в каждую регистрацию.Я попробовал что-то вроде:
@user = User.new(attribs)
inventory = @user.build_inventory(:max_slots => 10) # create the user inventory, starting with 10 slots
InventoryItem.create(:inventory_id => inventory.id, :game_item => GameItem.find_by_name('Fist'), :is_equipped => 1)
Я думал, что это не будет работать (потому что инвентарь не был создан до инвентаризации, и, конечно, это не так. Какой правильный способ сделать это?