2016-06-11 3 views
0

내 모델에서 연관성을 확인하고 유효성 검사를 위해 특정 개체를 제외하려고 시도했지만 작동하지 않을 수 있습니다. 내가 분명히 항상 실패합니다 기호 :lot_high_bidder:user의 직접적인 비교를하려고 상상레일 4 ActiveRecord 배타 인증 유효성 검사

validates :user, presence: true, exclusion: { in: [:lot_high_bidder] } 

하지만 내가 제외 검증의 방법 이름을 사용할 수없는 것은 않거나입니다 : 여기에 내 코드입니다 구문이 잘못 되었나요?

+0

달성하려는 것을 설명해 주시겠습니까? 당신은 유효성 검사를 위해 제외 객체를 원한다고 말합니다 : 조건부 유효성 검사 if : 또는 except : validator에 대한 옵션 - http://edgeguides.rubyonrails.org/active_record_validations.html#using-a-symbol-with-if-and- 예외가 아닌 경우 –

+0

제외 자체는 해당 속성이 나열된 값 중 하나가 될 수 없도록하는 유효성 검사입니다 (즉, 사용자가 lot_high_bidder와 동등하지 못하도록 함). –

+0

죄송합니다. 입찰가 연결을 통해 사용자를 알고 있으며 현재 높은 입찰 사용자를 방지하려고합니다. 다른 입찰가를내는 것에서 – toomanyredirects

답변

0

레일은 그냥 사용자 협회 대신 user_id를 확인할 수있는 경우 모델

http://apidock.com/rails/ActiveRecord/Validations/ClassMethods/validates_associated

확실하지 않음에 연결을 확인하는 데 사용되는 validates_associated 방법이있다.

희망 하시겠습니까?

+0

나는 그것을 생각했다. 그러나 나에게 그것이 협회가 받아 들일 만하다는 것을 입증하는 것이 아니라 동시에 그 객체의 검증을 수행하는 것이 더 많았다 고 생각했다. – toomanyredirects