我有一个mongoid的问题。我在某些字段上进行了验证,称为flickr_id
。问题是,Mongo不支持事务,有时候,尽管存在validates :flickr_id, :uniqueness => true
,但数据库中存在重复。如何从Rails应用程序中删除它们?因为任何时候我想用这些不唯一的对象做某事,我得到一个无效的错误。在这种情况下如何忽略验证?
答案 0 :(得分:0)
我正在按预期使用validates_uniqueness_of
作品。假设您想要清理数据库,您可以注释该行并通过控制台删除重复的文档。
如果不是这种情况,您可以在验证中添加on
,因此验证仅在创建/更新时运行,而不是在销毁时运行:
:on仅在指定时运行,支持:create和:update。
更多信息here。
答案 1 :(得分:0)
尝试使用object.delete
代替object.destroy
。