2

我有一个验证失败的mongoid文档(在 rails 应用程序中)。我想重置所有无效字段。目前我正在这样做:

@product.errors.each do |e,m|
  method_name = "reset_#{e}!"
  @product.send(method_name)
end

这没关系,但是没有更好(更简洁)的方法来做到这一点吗?我已经阅读了肮脏的跟踪文档并进行了谷歌搜索,但我找不到任何关于此的信息。

4

1 回答 1

0

我不知道“更简洁”是什么意思,但您不需要使用“发送”

@product.errors.errors.each do |f|
  @product[f] = c.changes[f.to_s].first
end
于 2014-10-31T23:34:57.940 回答