现在,我有一个User
模型,其username
字段正在通过以下方式进行验证:
validates :username,
:presence => true,
:length => { :in => 3..60 },
:format => { :with => /^[a-zA-Z0-9\-_ ]+$/ }
如果未达到:length
,如何隐藏:format
和:presence
验证错误?
答案 0 :(得分:4)
尝试:allow_blank =>在第二次和第三次验证中都是如此。
答案 1 :(得分:3)
我认为你可以这样做:
validates :username,
:presence => true,
:length => { :in => 3..60, :allow_nil => true },
:format => { :with => /^[a-zA-Z0-9\-_ ]+$/, :allow_nil => true }
当没有设置用户名时,它不会关心长度和格式验证,但是如果键入至少一个字符,它将正常工作。