【发布时间】:2017-05-05 05:03:33
【问题描述】:
我在我正在处理的 Rails 项目的迁移文件中看到 default: nil。在 Postgres 中,这会在 db 中产生一个 NULL 值。
有人会使用这个有什么理由吗?
在我看来,只需跳过设置默认值就可以达到相同的结果,并且值将是NULL。
【问题讨论】:
标签: ruby-on-rails postgresql migration
我在我正在处理的 Rails 项目的迁移文件中看到 default: nil。在 Postgres 中,这会在 db 中产生一个 NULL 值。
有人会使用这个有什么理由吗?
在我看来,只需跳过设置默认值就可以达到相同的结果,并且值将是NULL。
【问题讨论】:
标签: ruby-on-rails postgresql migration
我现在也在问自己同样的问题。我在模型上有两列,应该始终为“nil”以反映遗留系统决策。
...
我认为没有理由这样做,正如您所说,它默认为 nil。就我而言,我决定也使用validates_absence_of :field。
这可能并不完全是一个答案,但有人可能会因为其他人这样做而感到安慰。我很想知道隐式假设该字段将始终保持nil 的缺点。
【讨论】: