我讀使用Rails 4日的Editon書敏捷Web的研究與開發,當他提出一個模型,這裏面的方法:那行代碼是做什麼的?
def add_line_items_from_cart(cart)
cart.line_items.each do |item|
item.cart_id = nil
line_items << item
end
end
,並接受這樣的解釋:
*對於我們從轉移的每個項目購物車的順序我們需要做兩件事。首先,我們將cart_id設置爲零,以便在我們銷燬購物車時防止物品發生嘔吐。然後我們將該項目本身添加到訂單的line_items集合中。請注意,我們不必對各種外鍵字段做任何特殊處理,例如將行項目行中的order_id列設置爲引用新創建的訂單行。 Rails使用我們添加到Order和LineItem模型中的has_many和belongs_to聲明來爲我們編織。將每個新行項添加到line_items集合中,將密鑰管理職責交給Rails。*
有人可以解釋一下這個簡單的代碼行嗎?line_items < < item能做所有這些事情嗎?
感謝您的關注 西蒙娜
奧斯卡,你寫道:是關於什麼框架的信息。因此,描述對應於整段代碼,而不僅僅是該行。你能解釋一下這條線是如何將order_id添加到項目中的嗎? – 2010-12-06 23:24:03