2013-04-18 4 views
1

간단한 질문입니다. 나는 pick_up과 delivery라는 두 필드를 가지고있다. 양식을 제출하는 동안 사용자가 두 필드 중 하나를 입력하길 원합니다. 의미 :레일 : 두 필드의 유효성 확인

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

하나 이상 존재해야합니다.

이 유효성 검증을 작성하는 방법은 무엇입니까?

+2

참조를 http://stackoverflow.com/questions/9679943/ 복수의 속성 중 하나의 유효성을 검사하는 것 –

답변

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 
+3

어떻습니까 'errors [: base] << pick_up.blank라면 << "하나만 선택하십시오"? && delivery.blank? ' – mkk

0

이 난 그냥 한 라이너 할 거라고 그 간단한 충분히 검증입니다 :

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