【发布时间】:2012-09-17 15:52:03
【问题描述】:
我想在 Rails 中为模型添加 :presence 和 :uniqueness 验证。我正在使用 MongoDB 和 Mongoid gem。
我有一个已经在使用的模型,并且在数据库中有现有记录。我想添加一个新的 :field,然后为该字段添加 :presence 和 :uniqueness 的验证。
我知道默认情况下,任何现有记录都会简单地添加 :field 并且结果将为 null,除非我指定 :default。
我的问题是,由于我希望这个新的 :field 是唯一的,这是否会导致数据库中现有记录为空的错误?我会丢失这些记录还是 Rails 只是将验证应用于新记录?
【问题讨论】:
-
为什么不迁移你的数据库来填充那些空值呢?
-
有效,此时我们只有数千条记录。
标签: ruby-on-rails ruby