Reputation: 1365
One quick question. I have two fields pick_up and delivery. I want user to enter one of the two fields while submitting form. Means:
validates pick_up or delivery, :presence => :true.
At least one should be present.
How to write this validation?
Upvotes: 1
Views: 162
Reputation: 2189
This is a simple enough validation that I'd just do a one-liner:
validate { errors.add(:base, 'Please select one option') if pick_up.blank? && delivery.blank? }
Upvotes: 0
Reputation: 486
validate :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
Upvotes: 2