2013-10-07 2 views
5

첫 번째 레일 프로그램이 여기에 있습니다. 나는 req'd보다 조금 더 나아가고 싶다. 예를 들어, 주소록에 이름이나 성 또는 둘 모두를 허용하는 항목을 허용한다. 즉, 첫 번째 또는 마지막 validate_presence_of 싶습니다 및 C++에서 할 수있는 쉬운 일이지만 두 가지가 누락 된 경우에만 예외를 던질 수 있지만 Ruby 구문은 어떻게 생겼을까요?2 개의 필드 사이에 조건부 유효성 검사가 있음

답변

12

first_name이 비어있는 경우 조건부 유효성 검사를 실행할 수 없습니까? 이름이 비어 있지 않으면 유효성 검사가 실행되지 않지만 비어 있으면 last_name도 공백이 아닌지 확인합니다.

validates :last_name, :presence => true, :if => "first_name.blank?" 
+0

새로운 구문'''validates : last_name, presence : true의 경우 : "first_name.blank?"''' – James

1

설명한 유효성 검사 방법은 here입니다.

+0

감사합니다. 그것을 시도했다. 그러나 그것은 나에게 내가 아직 이해하지 않았던 장소를 가져 갔다. 오류 발생/처리의 모든 파생물을 배워야 할 것입니다. 그러나 일단 사용자 정의 유효성 검사를 사용하면 내가 익숙해 진 C++ 논리의 힘을 확실히 사용할 수 있습니다. –

관련 문제