我有一個名爲UserPrice
的模型,它有一個表單,您可以一次創建多個UserPrice's
。我有這個叫:all_dates
這是假設來更新我的UserPrice
模式叫:purchase_date
的另一date_select領域的虛擬屬性,但因爲它是不正確做的工作,我需要在這裏這種方法的詳細解釋,所以我可以得到它的工作:更新我的模型的新記錄的方法
def save_all_dates_to_user_prices
if !self.all_dates.nil?
self.user_prices.each {|up| up.purchase_date = self.all_dates if up.new_record?}
end
end
我就開始了:
我定義的方法
save_all_dates_to_user_prices
發生在我UserPrice模型before_save
。if !self.all_dates.nil?
表示正在檢查UserPrice.all_dates屬性是否爲空或不存在(nil?)。
這是我迷路的地方;沒有在這條線是肯定的:
self.user_prices.each {|up| up.purchase_date = self.all_dates if up.new_record?}
- 包裝中每個UserPrice.user_prices?如果我試圖獲得一組新記錄,它不會看起來像這樣嗎?
- 爲什麼用
|up|
,是self.user_prices.each
代表什麼? self.user_prices.each
=什麼都裹在{}
(散列)?
除了回答我上面提到的問題,有人可以填寫/更正關於此方法的詳細信息嗎?
謝謝,我是Rails和Ruby試圖學習的代碼。