저는 몇 시간 동안 클래스 또는 스코프 메서드를 개발하려고 애 쓰고 있지만 SQLite에 대한 초보자 지식이 있습니다. 시도하고 읽은 모든 것이 지금까지 실패했습니다.인스턴스 메서드의 값을 기반으로 개체를 정렬하는 클래스/범위 메서드를 만드는 방법은 무엇입니까?
나는 그들의 평균 등급에 의하여 명부를 주문하는 방법을 찾고있다.
나는 List와 Rating 사이에 has_many/belongs_to 연관이있다. 목록 have_many 등급, 각 목록 have_many 등급하실 수 있습니다. 지금 그들의 평균 평가하여 목록을 주문할 수있는 방법을 찾기 위해 노력하고있어,하지만 어떤 성공을 가지고 있지 않다
def average_rating
self.ratings.average(:rating).to_i
end
: 나는 다음 목록의 평균 등급을 계산하는 인스턴스 메소드가 있습니다. 다른 게시물에 이어이 방법을 시도해 보았습니다.
그러나 단순히 특정 순서없이 모든 목록을 반환합니다. 이 쿼리와 함께 :
SELECT AVG("ratings"."rating") FROM "ratings" WHERE "ratings"."rated_id" = ?
나는 목록 모델에 대한 속성을 AVERAGE_RATING하고 생각했지만, 심지어의 범위 방법을 개발하는 어려움이 있었다. 조언이나 도움을 제공 할 수 있다면 크게 감사하겠습니다!
감사합니다. 나는 당신이 제안한 것처럼 속성을 추가 할 것이다. – Dog