Rails:两个字段的验证

时间:2013-04-18 06:33:40

标签: ruby-on-rails-3 validation

一个简单的问题。我有两个字段pick_up和delivery。我希望用户在提交表单时输入两个字段之一。的意思是:

 validates pick_up or delivery, :presence => :true.

至少应该有一个人。

如何编写此验证?

2 个答案:

答案 0 :(得分:2)

验证:pickup_or_delivery

def pickup_or_delivery
  if [self.pick_up, self.delivery].compact.blank.size == 0
    errors[:base] << ("Please select one option")
  end
end   

答案 1 :(得分:0)

这是一个简单的验证,我只做一个单行:

validate { errors.add(:base, 'Please select one option') if pick_up.blank? && delivery.blank? }