如何在Rails中的十进制列中设置默认值?我尝试了以下两种方法,使用Rails 3和Postgresql,但在每个控制台之后,控制台告诉我默认值仍为nil
。如果我从控制台设置值,则没有问题,但它似乎在迁移中不起作用。
#Attempt 1
add_column :providers, :commission, :decimal, :precision=>6,:scale=>4,:default=>0.1
和
#Attempt 2
add_column :providers, :commission, :decimal, :precision=>6,:scale=>4,:default=>BigDecimal("0.1")
非常感谢你的帮助!
答案 0 :(得分:8)
事实证明我还需要设置:null => false
以下代码有效:
add_column :providers, :commission, :decimal, :precision=>6,:scale=>4,:default=>0.1, :null => false