У меня проблема, очень похожая на проблему, описанную здесь в RubyOnRails Guide .
Этот запрос:
Client.all :joins => :orders,
:conditions => { :orders => {:created_at => time_range}}
должен вернуть всех клиентов с их заказами, если они сделали несколько заказов в пределах временного диапазона. Я прав?
То, что я хочу, немного отличается: я хочу, чтобы все клиенты, сделали они заказ или нет, во временном диапазоне. Если они сделали несколько заказов, я хочу их, хотя. Я придумал это:
Client.all :joins => 'LEFT OUTER JOIN orders ON orders.client_id = clients.id',
:conditions => {:orders => {:created_at => time_range}})
Но это не дает мне клиентов, которые не сделали заказ ... Может кто-нибудь помочь с этим?