하나 이상의 ActiveRecord HABTM 협회가있는 레코드를 찾으십시오
-
03-07-2019 - |
문제
나는 두 가지 모델이 있으며, HAS에 합류했으며 많은 가입 테이블에 속합니다. 이 모델을 사용자 및 이벤트라고 부릅니다. 대부분의 사용자는 0 개의 이벤트가 있지만 하나 이상의 이벤트는 거의 없습니다. 나는 다음과 같은 일을하고 싶다 :
user.find (: all, : joins => : events, : 조건 => [ "'이벤트를 세는 것' > ?"], 0)
문제는 하나 이상의 관련 이벤트가있는 사용자 만 선택하는 방법을 잘 모르겠습니다.
해결책
답을 찾았습니다.
User.find(:all, :joins => :events, :select => 'DISTINCT `users`.*')
기본적으로 users
.* 결과 세트를 사용자 테이블 만 제한하고 고유 한 키워드는 각 사용자가 한 번만 반환되도록합니다.
제휴하지 않습니다 StackOverflow