[英]Mongoid validation issues.
难以掌握蒙古语和活动记录验证。
我的型号:
class Project
include Mongoid::Document
field :name
field :public, :type=>Boolean
#validation
validates_acceptance_of :public
end
在我的控制器中,我打电话给:
Project.create!(:name => 'Test Project', :public => false)
但我不断收到一个错误消息:必须接受公众。
尽管我在公共字段中创建带有布尔值的条目,但对为什么会出现此错误有任何想法吗?
从精细手册 :
封装了要验证接受服务条款复选框(或类似协议)的模式。
他们的想法是,他们必须选中:public
复选框,这将导致一个真实的值。 但是false
为非真实值将使验证失败,验证器将告诉您“必须接受公共”。
也许您正在寻找:
Project.create!(:name => 'Test Project', :public => true)
该文档还说:
仅当
terms_of_service
不为nil
时才执行此检查...
而terms_of_service
是指他们的示例。 所以你也可以这样做:
Project.create!(:name => 'Test Project', :public => nil)
Project.create!(:name => 'Test Project')
如果您想在MongoDB中获得一个看起来像有人通过您的验证的条目。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.