范围ActiveRecord基于记录数据的关系

时间:2015-04-24 16:08:19

标签: ruby-on-rails ruby-on-rails-4 activerecord has-many-through has-many

我是这样的模特:

class Club < ActiveRecord::Base
  belongs_to :organization
  has_many :career_clubs
  has_many :careers, through: :career_clubs
end

通过表career_clubs适当地获得职业。到目前为止,这只是使用俱乐部的id字段,并使用career_clubs获取id表中的所有记录。

我真正希望这样做,同时使用idorganization_id,以便获得匹配career_clubsid的所有organization_id }。

我知道如何使用下面的静态数据来确定范围,但这似乎不起作用。

has_many :career_clubs, -> { where active: true }

1 个答案:

答案 0 :(得分:1)

这应该做你想要的事情

has_many :career_clubs, ->(club) { 
  where(club_id: club.id, organization_id: club.organization_id)
}
相关问题