如何在不存在模型属性的情况下进行验证,但如果存在,属性的长度必须超过三个字符?
答案 0 :(得分:6)
您可以允许allow_blank: true
或nil
allow_nil: true
允许属性为空,并检查length:
:
validates :attr, length: {minimum: 4}, allow_blank: true
validates :attr, length: {minimum: 4}, allow_nil: true
您还可以使用if:
或unless:
:
validates :attr, length: {minimum: 4}, unless: -> (o) do o.blank? end