J'ai les modèles suivants:
class Company < ActiveRecord::Base
has_many :price_movements
has_many :goods_movements
end
class PriceMovement < ActiveRecord::Base
belongs_to :company
end
class GoodsMovement < ActiveRecord::Base
belongs_to :company
end
J'essaie de tout rassembler dans un sql sous la forme d'activerecord, mais je ne sais pas comment faire parce que je suis relativement nouveau pour ROR.
select * from companies c
inner join price_movements p
on c.id = p.company_id
inner join goods_movements g
on c.id = g.company_id
and g.date = p.date
Le problème clé pour moi est le deuxième lien où la date du mouvement des marchandises == la date du mouvement du prix. Quelqu'un peut-il demander s'il existe un moyen de le faire?
Company.joins(:price_movements,:goods_movements).where("goods_movement.date = price_movement.date")
Passez par ce lien il a une explication détaillée de la façon d'utiliser ActiveRecord