我是ActiveRecord的新手。我意识到我忘了为我的一个表中的列添加默认值。我想创建一个迁移来解决这个问题,但我无法弄清楚如何。是否有可在迁移期间调用的alter_column方法?如果没有,我该怎么办?
编辑:我刚尝试使用change_column,但这会导致如下错误:
- change_column(:carts,:quantity,:integer,{:default => 1}) - > 0.0097s rake aborted!发生错误,此以及所有后续迁移都已取消:
参数个数错误(0表示1)
你可以简单地做一个change_table
:
change_table(:tablename) do |t|
t.change :name, :string, :default => "something"
end
编辑:在这种情况下,您可以使用change_column_default