I have three models, each having the following associations:
class Model1 < ActiveRecord::Base
  has_many :model2s
  has_many :model3s
end
class Model2 < ActiveRecord::Base
  belongs_to :model1
  has_many :model3s, :through => :model1  # will this work? is there any way around this?
end
class Model3 < ActiveRecord::Base
  belongs_to :model1
  has_many :model2s, :through => :model1  # will this work? is there any way around this?
end
As you can see in the commented text, I have mentioned what I need.
You just create the method to access it
class Model2 < ActiveRecord::Base
  belongs_to :model1
  def model3s
    model1.model3s
  end
end
Or, you can delegate to model1 the model3s method
class Model2 < ActiveRecord::Base
  belongs_to :model1
  delegate :model3s, :to => :model1
end
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With