Rails中的状态验证器和allow_blank验证器之间的区别?

Mik*_*ski 5 ruby ruby-on-rails

我试图找出之间的区别:

validates :foo, presence: false
validates :foo, allow_blank: true
Run Code Online (Sandbox Code Playgroud)

当我使用状态:错误验证失败,但是当我使用allow_blank:true时,验证不会失败。根据文档http://apidock.com/rails/ActiveRecord/Validations/ClassMethods/validates_presence_of使用空白?方法。有人可以解释一下区别吗?

jon*_*now 2

allow_blank只验证nilpresence验证nil以及empty