2011-04-25 2 views
0

나는 Rails 2.3.9 응용 프로그램을 사용하고 있으며이 경우 게시물은 workouts입니다. 다음의 경우 comments을 모두 얻으려고합니다. workouts.특정 게시물에 대한 모든 설명 호출

@workouts = Workout.today_only.all(:include => {:user => :memberships}, :conditions => ["workouts.public = '1' AND memberships.box_id = ?", @box.id], :order => "workouts.created_at DESC") 

내 협회는 올바른 :

Workout has_many :comments 
Comment belongs_to :workout 

어떻게 created_at DESC에 의해 주문하는을 구체적으로 운동에 대한 의견의 목록을 얻을 것인가?

참고 : today_only은 named_scope이며 적절한 경우 해당 코드를 게시 할 수 있습니다. 당신의 운동 모델에서

+0

나는 이러한 조건에 대한 더 named_scopes를 만들고 포함 권하고 싶습니다. 지금 당신의 코드는 같은 줄에 여러 레벨의 추상화를 가지고 있습니다. – kikito

+0

그래 나는 동의한다. 그냥해야 돼. – bgadoci

답변

0

는 추가 :

has_many :comments, :order => 'created_at DESC' 

다음 당신이 할 수 있습니다

Workout.today_only.all(:include => [:comments, {:user => :memberships}], ... 
+0

그 후에보기 코드는 무엇입니까? 이상 적으로 모든 주석을 하나의 스트림에 표시하려고합니다. 반대로 각 운동을 얻고 그 후에 각 운동을위한 코멘트를 표시하기 위하여 가기. – bgadoci

+0

다음과 같이 할 수 있습니다 : @comments = Comment.all ([ "workout_id IN?", @workouts]) -하지만 SQL을 Comment에 클래스 메소드에 넣었습니다. –

관련 문제