我試圖向我的廣告資源中的現有項目金額添加金額。將金額添加到不存在的現有金額
雖然沒有加起來,我做錯了什麼?
def add_item_to_inventory (theItem, theAmount)
@playerinventory = Playerinventory.find(params[:id])
@item = Item.find(theItem)
if [email protected]?
if [email protected]_for_inventories.find_by_item_id(theItem)
@ifi = ItemForInventory.create(:item => @item, :amount => theAmount)
@playerinventory.item_for_inventories << @ifi
else
oldAmount = @playerinventory.item_for_inventories.find_by_item_id(theItem).amount
newAmount = oldAmount.to_i + theAmount.to_i
@playerinventory.item_for_inventories.find_by_item_id(theItem).amount = newAmount
end
if @playerinventory.save
return true
else
return false
end
end
false
end
if
部分作品像一個魅力。 else
不是
注意,theItem
是一個item_id。之後很明顯,我做@playerinventory.save
保存與砰保存!看看有什麼不對,我認爲一些驗證可能會失敗。 –
然而,使用新的ItemForInventory進行保存就像是一種魅力。 – CaptainCarl