2011-11-27 37 views
1

如何在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") 

非常感谢您的帮助!

回答

8

原来我还需要设置:空=>假

下面的代码工作:

add_column :providers, :commission, :decimal, :precision=>6,:scale=>4,:default=>0.1, :null => false