查找用户之间的对话

时间:2017-12-05 21:29:11

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

我需要一个ActiveRecord查询来查找current_user和任何其他用户的对话

对话可以有很多用户。我需要在该查询中设置用户ID(可以是两个或更多用户)。

class Conversation < ActiveRecord::Base
  has_many :users
end

class User < ActiveRecord::Base
  belongs_to :conversations
end

1 个答案:

答案 0 :(得分:1)

您可以加入并将查询作为哈希

Conversation.joins(:users).where(conversation_attr: some_value, users: { id:  current_user.id })

Conversation.joins(:users).where(conversation_attr: some_value, users: { id:  [user_id1, user_id2, ...]})