我的模型Expense
已經修改getter和setter爲quantity
屬性,以應用貨幣正在使用不使用自定義的getter:的form_for當加載屬性
這裏的吸氣劑:
def quantity
update_rates
c = read_attribute(:quantity)
if @@current_currency != "EUR"
@@eu_bank.exchange(c*100, "EUR", @@current_currency).cents/100.0
else
c
end
end
這是用於調用@expense.quantity
時的情況,如在索引或show視圖中。但是,如果使用form_for(@expense)
標記編輯費用,則加載的數量值不是應該的值。直接從數據庫(我猜)提取它顯示我定義的吸氣劑不被使用:
<%= form_for(@expense) do |f| %>
<div class="field">
<%= f.label :quantity %><br>
<%= f.text_field :quantity %>
<% end %>
我該如何解決這個問題?
量被存儲在數據庫中作爲歐元,而轉換是基於歐元和當前貨幣之間的匯率造 – dabadaba