0
를 수집 I 내 주문 모델에서 다음과 같은 범위를 가지고 :레일 3/루비 1.9.3은
scope :trial_almost_up, lambda { where :date_finished => 27.days.ago.midnight..27.days.ago.end_of_day }
각각의 주문이 사용자에 연결됩니다. 그래서 당신은 Order.trial_almost_up을 실행하고 명령의 배열을 얻고이를 실행하는 경우 :
o = Order.trial_almost_up
o.collect &:user
수집]는 사용자에게 연결되어 각 주문에 대해 별도의 SQL 문을 실행합니다.
User Load (0.6ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 11244 LIMIT 1
User Load (0.3ms) SELECT `users`.* FROM `users` WHERE `users`.`id` = 1970 LIMIT 1
어쨌든 이것을 하나의 호출로 결합합니까?
더 나은 뭔가를 찾으면 내가이를 편집 할 수 있습니다, 그것은 작동하는지 알려주세요! 정말 고마워! 나는'includes'를 사용하는 것을 잊어 버렸습니다 ... 아직도 include와 join 문장에 익숙해 져 있습니다. – dennismonsewicz