0
我試圖將一些對象從另一個模型移動到另一個模型。抓取複製模型並保存到新對象
quotes.labouritems
獲取我想要的數據。
這不起作用:
newitems = quotes.labouritems.dup
new invoice = invoice.labouritems.build(newitems)
爲什麼我這樣做,這是我需要的數據從labouritems
但不想保持相同的ID,否則任何時候他們得到quote.labourites
更新將更新記錄在invoice.labouritems
。
是的,但我怎麼把它分配給發票模型 – user979587
我不是一個ActiveRecord專家(或者Rails ),但可能類似於(但可能不是完全): 'invoice = Invoice.new(quotes.labouritems.to_h)' 您可能必須爲您的模型實現'to_h'方法,如果它不是那裏默認。我相信ActiveRecord允許你從一個散列中創建一個新的方法,如果沒有,你可能必須實現一個'initialize'方法來初始化發票中的一個散列。 雖然這樣做可能有一個更簡單的「鐵血」方式。 – jmervine