4
부울 필드의 고유성을 확인하려고하는데 사실 일 때만 유효합니다.조건부로 부울 값의 유효성 검사
이 유효성 검사가 실행validates_uniqueness_of :org_feed, if: :org_feed
, 그것은 다음과 같은 SQL 생성 : 그것은 피드를 발견하면이 쿼리가 행을 반환
SELECT 1 AS one FROM `feeds` WHERE `feeds`.`org_feed` = BINARY 't' LIMIT 1
을하지만 부울 org_feed 나는 내 모델에 정의 다음 한 0
입니다. 이는 정확히 수행해야하는 것과 반대입니다. 필드가 부울이므로 BINARY 't'
이 단지 true
일 것으로 예상됩니다. 따라서 쿼리가 다음과 같이 표시되어야합니다.
SELECT 1 AS one FROM `feeds` WHERE `feeds`.`org_feed` = true LIMIT 1
어떻게 든 부울 필드인지 확인해야합니까?
사실, 경우 : 수있는 방법이 필요 없음을 org_feed. – Nico