David
David

Reputation: 844

Set a default value in a decimal column

How do you set a default value in a decimal column in Rails? I've tried both the following, using Rails 3 and Postgresql, but after each one the console tells me the default values are still nil. If I set the value from the console, there's no problem, but it doesn't seem to work in the migration.

#Attempt 1
add_column :providers, :commission, :decimal, :precision=>6,:scale=>4,:default=>0.1

and

#Attempt 2
add_column :providers, :commission, :decimal, :precision=>6,:scale=>4,:default=>BigDecimal("0.1")

Many thanks for your help!

Upvotes: 3

Views: 5468

Answers (1)

David
David

Reputation: 844

It turns out I also need to set :null=>false

The following code worked:

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

Upvotes: 9

Related Questions