【发布时间】:2021-07-21 14:57:22
【问题描述】:
我在 DB 上有大量记录,想添加一个新列。但是,我不想为旧的现有记录设置默认值,只为新记录设置。
当我在迁移时设置默认值(如下所示),所有旧的现有都将接收默认值。
add_column :records, :status, :integer, default: 0
问题是,如果我只为枚举添加默认值,就像这样:
enum status: {
to_review: 0,
pending: 1,
processed: 2
}, _default: :to_review
我收到此错误
NoMethodError (undefined method `all?' for :to_review:Symbol)
如何添加新列、设置默认值并仍将旧记录保留为 null?
【问题讨论】:
标签: ruby-on-rails enums