Ruby on Rails 添加具有默认值的列
示例
以下示例将一列添加admin到users表中,并为该列提供默认值false。
class AddDetailsToUsers < ActiveRecord::Migration[5.0]
def change
add_column :users, :admin, :boolean, default: false
end
end在带有PostgreSQL的大型表中,使用默认设置进行迁移可能会花费很长时间。这是因为每行都必须使用新添加的列的默认值进行更新。为了避免这种情况(并减少部署期间的停机时间),您可以将迁移分为三个步骤:
添加与add_column上面类似的-migration,但不设置默认值
在应用程序运行时,在rake任务中或在控制台上部署和更新列。确保您的应用程序已将数据写入该行的新行/更新行。
添加另一个change_column迁移,然后将该列的默认值更改为所需的默认值
热门推荐
10 祝孙辈生日祝福语简短
11 恋人跨年祝福语大全简短
12 考大学敬酒简短祝福语
13 开工投产大吉祝福语 简短
14 偶然结婚祝福语朋友简短
15 感谢学长学姐祝福语简短
16 戏精的祝福语简短
17 我要结婚祝福语简短
18 婚前女儿生日祝福语简短