2011-07-26 2 views
1

첨부 파일 모델에서 boolean 인 main_image라는 필드가있는 레일 응용 프로그램이 있습니다. 데이터베이스에 하나의 참이지만 여러 개의 false를 허용한다고 가정합니다. 그러나 이제는 범위가 있으므로 각 자산에 대해 하나씩 만 허용됩니다. 이는 다른 모델입니다. 첨부 파일 하나당 여러 개의 false를 허용하는 방법은 무엇입니까?레일 모델 하나의 값 중 하나지만 다른 모델의 배수

+0

편집을 응답으로 이동하고 허용 된 대답으로 설정하십시오. 그런 식으로 사람들은 대답을 생각하지 않을 것입니다. (내가 한 것처럼) –

+0

나는 그것을 할 수 있는지를 알게 될 것입니다. (평판 점수가 100 점 미만인 사용자의 경우) 이미 완료 한 시간 제한이 있습니다. –

+0

Ok 답변을 게시했지만 2 일 동안 수락하지 않습니다. –

답변

3

나는 지금 내 모델에서 다음 코드를 사용하여이 문제를 해결 한 :

이후
validates_uniqueness_of :main_image, :scope => [:asset_id], :if=>:main_image 

: main_image 중 하나 참 또는 거짓이이 main_image 필드를 가지고 있는지가 각 ASSET_ID에 고유하게 말한다된다 true 인 경우에만 true를 반환하고, false이면 false를 반환하므로 모델이 고유한지 검사하지 않습니다.

관련 문제