如何使用bang手动调用AN对象的验证

时间:2014-02-21 10:23:30

标签: ruby-on-rails validation

我原本希望rails在AR对象上有类似validate!方法的东西,但我找不到类似的东西。

我希望能够在对象上调用验证并提出可能存在的任何错误。

2 个答案:

答案 0 :(得分:1)

当您想要在对象无效时引发异常时,可以使用严格验证。 但是您需要在每次验证时指定strict参数。您还可以将自定义异常传递给strict参数。这是我了解您解决方案的唯一方法。

样品: validates :name, presence: { strict: true }

您仍需要使用object.valid?

进行验证

http://edgeguides.rubyonrails.org/active_record_validations.html 第4章。

答案 1 :(得分:0)

my_object.valid?

这将运行验证并为任何失败添加错误,您可以使用.errors

查看

通常,如果对象验证失败,您不会引发异常:应该为意外问题保存异常,而不是预期的问题,例如验证失败。