을 표시 나는 다음과 같은 모델 각각 이전의 관련 아이 (I 간결 다른 모델 방법과 선언 제외)이 : 지금쿼리는 잘못을 여러 번
class Course < ActiveRecord::Base
has_many :questions
scope :most_answered, joins(:questions).order('questions.answers_count DESC') #this is the query causing issues
end
class Question < ActiveRecord::Base
belongs_to :course, :counter_cache => true
has_many: :answers
end
class Answer < ActiveRecord::Base
belongs_to :question, :counter_cache => true
end
를 I Course
만 채워져 있습니다 (콘솔 Course.all.count
에서 실행하면 이됩니다). 내가 잘못 콘솔의 결과로 3를 얻을 첫 번째 Course
는 현재 세 가지 questions
인구가있다,하지만 난 실행할 때 Course.most_answered.count
(most_answered
위에서 볼 수 있듯이 Course
로 작성 내 범위 방법이다). Rails guide on queries을 컨설팅하는 것뿐만 아니라 쿼리의 다양한 반복을 시도했지만 어떤 일이 잘못되었는지 파악할 수 없습니다. 미리 감사드립니다.
감사합니다. 반복을 일으킨 이유를 설명했던 첫 번째 부분은 특히 도움이되었습니다. 코드를 복사하고 문법 오류가 발생하여 본인의 질문에 추가했습니다. 도와 줘서 고마워. – daspianist
작은 물건이 복수형에서 단수형으로 바뀌거나 적어도 특정 요소를 가져와 최소한보기를 렌더링하는지 확인하는 등 작은 물건이 오류를 일으키지 않도록하여 진전을 시도했습니다. 불행히도 나는이 질문에 도움이되지 않았다. – daspianist
'...'은 select 절에 추가해야하는 필드를 나타 내기위한 것이 었습니다. –