2010-05-11 2 views
0

이의 내가 있다고 가정 해 봅시다 :사용 named_scope (루비 온 레일스 + Searchlogic 질문)

class ForumTopic < ActiveRecord::Base 
    has_many :forum_posts 
    named_scope :number_of_posts, ?????? 
end 

class ForumPost < ActiveRecord::Base 
    belongs_to :forum_topic 
end 

내가 넣어해야합니까 ????? 같은 searchlogic 쿼리를 할 수 있도록 :

ForumTopic.descend_by_number_of_posts 

어떤 도움은 매우 크게 감사하겠습니다!

답변

0

게시물 개수로 주문 하시겠습니까?

난 당신이 :counter_cache를 사용하는 경우 당신이 할 경우, 당신은 단지 다음과 같이 주문할 수 있기 때문에 쉽게 생각 :

class ForumTopic < ActiveRecord::Base 
    has_many :forum_posts 
    named_scope :by_number_of_posts, :order => "forum_posts_count" 
end 

# controller 
ForumTopic.by_number_of_posts.all 

당신이 연결을 변경해야합니다 :counter_cache를 사용하려면

class ForumPost < ActiveRecord::Base 
    belongs_to :forum_topic, :counter_cache => true 
end 

forum_topics 표에 forum_posts_count 열을 만듭니다.

나는 이것이 그럴 것이라고 믿는다.