我有一个mongoid文档(在rails应用程序中)验证失败。我想重置所有无效字段。目前我这样做:
@product.errors.each do |e,m|
method_name = "reset_#{e}!"
@product.send(method_name)
end
这没关系,但是没有更好(更简洁)的方法吗?我已经阅读dirty tracking documentation并用谷歌搜索了,但我找不到任何相关内容。
答案 0 :(得分:0)
我不知道你的意思是什么'更简洁'但是你不需要使用"发送"
@product.errors.errors.each do |f|
@product[f] = c.changes[f.to_s].first
end