如何验证一个模型与一个整数属性说customer_id在订单表中允许customer_id,但如果它可用,它应该大于0
class Order < ActiveRecord::Base
validates :name, presence: true, length: {minimum: 3, maximum: 10}
validates :customer_id, numericality: {greater_than_or_equal_to: 1}, presence: false
end
我用上面的方法做了,但它不接受数字中的空值。
2条答案
按热度按时间4xrmg8kj1#
需要添加
allow_nil: true
。http://guides.rubyonrails.org/active_record_validations.html#allow-nil
oymdgrw72#
验证一个可以是nil或某个正整数的数字
您只需要将
allow_nil: true
添加到验证子句中。如果字段为nil
,则将跳过验证。因此,它应该看起来像:
https://guides.rubyonrails.org/active_record_validations.html#allow-nil