Я знаю, что Rails не поддерживает вложенные has_many: через отношения, хотя там был разговор и открытый билет о патче, так как уже в Rails 2.вложенная has_many: через в рельсах 3
Я пришел across a plugin это довольно гладкий, но мастер-ветви не работают с Rails 3, и я не решаюсь использовать его для решения критически важных задач в приложении, следовательно, отсутствие активной недавней разработки. Итак - как лучше всего справиться с этими отношениями.
class Author < ActiveRecord::Base
has_many :contracts
has_many :products, :through => :contracts
class Product < ActiveRecord::Base
has_many :contracts
has_many :orders
has_many :authors, :through => :contracts
class Contracts < ActiveRecord::Base
belongs_to :author
belongs_to :product
Итак, все время, что это было бы здорово, чтобы быть в состоянии получить по заказам, добавив это к Автор модели:
has_many :orders, :through => :products
Но, увы, вы не можете - в наименее без плагина. Итак, мой вопрос - это лучший подход к доступу ко всем заказам автора, когда единственная связь между моделью объединения, контрактами?
Похоже, что вложенный has_many: теперь работает в Rails 3.1, FYI. – Slick23