레일 모델 유효성 검사를 특정 순서로 실행하고 이전 유효성 검사가 만족스럽지 않은 경우 특정 유효성 검사를 건너 뛸 수있는 방법이 있습니까?레일 모델 유효성 검사 건너 뛰기 및 순서
예 : 입력란에 start_date 및 end_date 입력란이 2 개 있습니다. 내 모델이 개 검증 방법이 그 중
하나는 날짜가 "12 월 31 일/#은 {Date.today.year + 1}"
def end_date_in_range
if self.end_date
errors.add_to_base("Enter a date before #{Date.today.year + 1}") if self.end_date > Date.parse("12/31/#{Date.today.year + 1}")
end
end
내가 다른 검증이있는이 단계보다 적은 검사 시작 날짜로부터
def
(self.start_date.to_date .. self.end_date.to_date).inject(0) { |sum, n| ... }
end
이제 사용자가 12/31/20101 같은 종료일을 입력하면 종료 날짜에 날짜를 통해이 첫 번째 검증에 실패하지만 어느 다음 확인 또는 두 번째 유효성을 확인하기 위해 계속처럼 보인다 먼저 실행되고 두 경우 모두 프로세스가 진행되는 동안 내 응용 프로그램이 중단됩니다. 이 요청. 첫 번째 유효성 검사를 확인하고 사용자에게 오류를 반환하고 두 번째 유효성 검사에서 날짜를 단계별로 실행하지 않도록합니다.
덕분에, 재