Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ruby-on-rails/62.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Ruby on rails 使用Active Record Rails 4将两个查询合二为一_Ruby On Rails_Ruby On Rails 4_Rails Activerecord - Fatal编程技术网

Ruby on rails 使用Active Record Rails 4将两个查询合二为一

Ruby on rails 使用Active Record Rails 4将两个查询合二为一,ruby-on-rails,ruby-on-rails-4,rails-activerecord,Ruby On Rails,Ruby On Rails 4,Rails Activerecord,我在rails控制台中得到了这两个查询,但我只想用相同的结果进行一个查询。我怎么能做到 表名:公司 id :integer not null, primary key name :string phone :string email :string 表名:用户 id :integer not null, primary key role

我在rails控制台中得到了这两个查询,但我只想用相同的结果进行一个查询。我怎么能做到

表名:公司

  id         :integer          not null, primary key
  name       :string
  phone      :string
  email      :string
表名:用户

  id                     :integer          not null, primary key
  role                   :integer
  tier                   :integer
  company_id             :integer
  name                   :string
  email                  :string
表名:负责人

  id         :integer          not null, primary key
  company_id :integer
  user_id    :integer
这些查询:

user_ids = Responsible.where(company_id: 1).pluck(:user_id)
User.where(id: user_ids).agent_or_admin.tier1.pluck(:email)

(编辑:格式化代码块)

假设
Responsible
用户
公司
的联接表,您可以执行以下操作:

User.joins(:responsibilities).where(responsible: {company_id: 1}).agent_or_admin.tier1.pluck(:email)

但是,如果不知道代码中的内容是如何构造的,我真的不能做很多其他事情

请使用特定的代码进行更新,您可能还想了解如何更好地格式化您的文章,以便阅读。
Responsible
是用户和公司的联接表吗?我们对您的代码一无所知,请帮助我们。您可以发布代理或管理员和tier1方法及其位置吗?是的,由于用户和公司之间的多对多关系,responsibles是第三个表。我尝试了这个查询,但没有成功。我用三个表格编辑了问题的描述。非常感谢。它以什么方式“不起作用”?如果希望我们帮助调试,您需要更具体一些。