0
我有這樣的代碼:防止ActiveRecord的圓小數
Payment.select('payments.*, (payment.amount * 0.1) as total_amount')
當TOTAL_AMOUNT等於0.1(在MySQL控制檯檢查)的ActiveRecord返回0。如何防止ActiveRecord的圓小數?在此先感謝
我有這樣的代碼:防止ActiveRecord的圓小數
Payment.select('payments.*, (payment.amount * 0.1) as total_amount')
當TOTAL_AMOUNT等於0.1(在MySQL控制檯檢查)的ActiveRecord返回0。如何防止ActiveRecord的圓小數?在此先感謝
如果您total_amount
數據類型是integer
那麼它不會接受浮動值,所以你的情況total_amount
數據類型需要設置爲float
。
和如果你想知道如何將其更改爲float
,如果你不擔心數據的丟失,那麼我會建議rake db:rollback
後來打開create_payments
遷移文件和編輯數據類型浮動此後不要忘記做rake db:migrate
。
'total_amount'字段有什麼數據類型? – Pavan
如果您想要十進制值,'total_amount'必須是'float'。 – supernova32
如果我的答案似乎適合你,那麼請接受它! – Pavan