1

我有一个可选的表单字段,但如果它完成,我想验证它是一个整数值。在我的模型中,我有:

validates :number_of_employees, numericality: { only_integer: true }

这可行,但是当我提交值未完成的表单时,它会引发错误,因为它不是数字。我收集您可以在 validates 语句中放置 if 条件,但不确定这是否是处理此问题的正确方法或检查存在的语法是什么。

任何帮助表示赞赏。

4

1 回答 1

2

:if允许空字段通过验证的惯用方法是使用选项,而不是使用:allow_blank选项。除了验证器之外的所有验证器都是通用的presence

validates :number_of_employees, numericality: { only_integer: true, allow_blank: true }
于 2012-08-26T15:23:47.097 回答