Ruby on rails 与ActiveRecord连接的链

Ruby on rails 与ActiveRecord连接的链,ruby-on-rails,ruby,join,where,chain,Ruby On Rails,Ruby,Join,Where,Chain,我正在尝试这样做: filter_categorys = params[:filter_categorys] companies = Company.where('id_category = (?)', filter_categorys).joins(:subsidiary).where('zone = Nuñez') 它不起作用了 因此,我需要让我所有的公司都有一个id_类别,并且他们在“区域”内至少有一个子公司 我想不是这样的。。。请帮忙D Company.rb: class Compan

我正在尝试这样做:

filter_categorys = params[:filter_categorys]
companies = Company.where('id_category = (?)', filter_categorys).joins(:subsidiary).where('zone = Nuñez')
它不起作用了

因此,我需要让我所有的公司都有一个id_类别,并且他们在“区域”内至少有一个子公司

我想不是这样的。。。请帮忙D

Company.rb:

class Company < ActiveRecord::Base

    has_many :subsidiary, :foreign_key => :id_company
    has_many :benefit, :foreign_key => :id_company
    set_primary_key :id_company
    self.table_name = 'tbl_companys'

end
class公司:id\U公司
有很多:好处,:外国的\u键=>:id\u公司
设置\u主\u键:id\u公司
self.table_name='tbl_companys'
结束
subsidial.rb:

class Subsidiary < ActiveRecord::Base

    belongs_to :company
    set_primary_key :id_subsidiary
    self.table_name = 'tbl_subsidiaries'

end
类附属
您必须“告诉”where子句分区位于辅助表中:

Company.where(id_category: filter_categorys).joins(:subsidiary).where(subsidiary: { zone: 'Nuñez' }
如果显示“未找到关系子公司”,请尝试:

Company.where(id_category: filter_categorys).joins(:subsidiary).where(tbl_subsidiaries: { zone: 'Nuñez' }

在(?)
中使用
id\u类别(不是相等的)谢谢,但问题是试图获取tbl\u公司及其子公司的“区域”列。第二个答案非常完美!我非常感谢吉吉先生!谢谢:D!!!!!