2011-09-06 63 views
0

我現在有一個表格:形式不保存到數據庫中軌

<%= f.label(:price) %> <br/> 
<%= f.text_field(:price, :value => number_to_currency(@object.price)) %> 

我改變了我的遷移從使用浮動使用十進制:

change_column :object, :price, :decimal, :precision => 5, :scale => 2 

在我看來,我把它叫做使用:

<%= @object.price %> 

出於某種原因,每當我做出改變的形式或控制檯,它從不保存價值,並把它放在$ 0.00包裝[R儘管我改變了它。在視圖中,它總是顯示爲'0.0'。我不確定問題是什麼。

回答

0

你有一個名爲objectobjects的表嗎?或者這只是一個例子嗎?

如果沒有,請檢查您的價格欄以確保遷移工作正常。

如果您的表格中確實有適當的列類型,請檢查您是否在Object類中使用attr_accessible(並且包含price)。

另外,如果您使用Object作爲您的課程名稱,那麼您可能在此處有其他一些問題,我建議不要這樣做。

編輯 number_to_currency可以預先考慮在你的成本前的$,確保你進入你的價格沒有任何貨幣之前,要不然我相信這也將導致0.0(無法解析小數「$ 123.00 ',但可以解析'123.00'

+0

您好克里斯蒂安,謝謝。對象只是一個例子,我確實有attr_accessible包括價格。這是因爲我的價格前面的$符號,如你所說,當我沒有美元符號輸入時,它就起作用了!非常感謝! – noob