Ruby on Rails:如何使用迁移向现有列添加非空约束?
在我的Rails(3.2)应用程序中,我有一堆表在我的数据库,但我忘了添加一些非空约束。 我search了一下,但我找不到如何编写一个迁移,现有的列添加不为空。
TIA。
尝试change_column :
change_column :table_name, :column_name, :column_type, null: false
你也可以使用change_column_null :
change_column_null :table_name, :column_name, false
1)首先:添加默认值的列
2)那么:删除默认值
add_column :orders, :items, :integer, null: false, default: 0 change_column :orders, :items, :integer, default: nil