在Rails中查询has_many_through连接表

时间:2017-02-01 22:13:21

标签: ruby-on-rails activerecord rails-activerecord

我在Rails 5中有一个应用程序,我有以下关系:

用户模型

has_many :consult_users
has_many :consults, through: :consult_users

咨询模型

 has_many :consult_users
 has_many :users, through: :consult_users

ConsultUser Model(Join Table)

  belongs_to :consult
  belongs_to :user

在控制器中,我需要列出给定用户的所有咨询。因此,在英语列表中,所有具有联接记录consult_usersconsult_users.user_id的咨询等于current_user.id

我正在艰难地修剪这个,并且想知道是否有人可以给我一个关于如何编写此查询的提示,以获得满足此查询的所有Consults的数组。

我已经尝试过原始SQL和ActiveRecord,但是我正在试一试。

非常感谢任何帮助。

1 个答案:

答案 0 :(得分:1)

你应该能够使用这种关联,例如:

current_user.consults