1

我有一个问题。我在某个字段上进行了验证,称为flickr_id. 问题是,Mongo 不支持事务,有时,不知何故,尽管存在validates :flickr_id, :uniqueness => true,但数据库中有重复项。如何从 Rails 应用程序中删除它们?因为每当我想对这些不是唯一的对象做某事时,我都会收到一个错误,即它无效。在这种情况下如何忽略验证?

4

2 回答 2

1

尝试object.delete代替object.destroy.

于 2013-08-30T16:13:58.017 回答
1

我正在validates_uniqueness_of按预期使用作品。假设您想要清理数据库,您可以评论该行并通过控制台删除重复的文档。

如果不是这种情况,您可以添加on到您的验证中,因此验证仅在创建/更新时运行,但在销毁时不运行:

:on 仅在指定时运行,支持 :create 和 :update。

更多信息在这里

于 2013-08-30T14:49:27.347 回答