ruby-on-rails – 设置a:has_many:通过belongs_to关联Ruby on Rails上的关联

前端之家收集整理的这篇文章主要介绍了ruby-on-rails – 设置a:has_many:通过belongs_to关联Ruby on Rails上的关联前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有三个模型,每个模型都有以下关联:
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

正如您在评论文本中所看到的,我已经提到了我需要的内容.

解决方法

您只需创建访问它的方法
class Model2 < ActiveRecord::Base
  belongs_to :model1

  def model3s
    model1.model3s
  end
end

或者,您可以将model3s方法委托给model1

class Model2 < ActiveRecord::Base
  belongs_to :model1

  delegate :model3s,:to => :model1

end

猜你在找的Ruby相关文章