我需要验证一个字段是一个正值,并在lib/validations.rb中写了一个小小的方法,并完成了它并将其添加到我的模型中。然而,现在我的rspec测试之一是失败抱怨...自定义Rails验证抛出未定义的方法错误
NoMethodError: undefined method '<' for nil:NilClass"
...当值是未定义的。我还在我的模型中添加了validates_presence_of :price
,高于我的自定义validates_positive_or_zero
方法。
我认为validates_presence_of
会先被调用,并且当该字段为nil
时,它不会运行进一步验证。我是否必须更改我的validates_positive_or_zero
方法以检查字段是否存在以解决此问题?任何人都可以给我一些见解发生了什么?
谢谢!我不知道我是如何忽略这一点的。 – sensae 2011-06-02 05:15:08