0

User私は 2 つのモデルを持っていServiceます。Userhas_and_belongs_to_many についてServicesも同じことが言えますServices:

class User < ActiveRecord::Base
  has_and_belongs_to_many :services
end

class Service < ActiveRecord::Base
  has_and_belongs_to_many :users
end

選択したサービスを提供するすべてのユーザーを見つける必要があります。何かのようなもの:

@users = User.where(:services_ids => [2,3,4])

4

2 に答える 2

1

これはうまくいくはずです:

User.join(:services).where(:services.id => [2,3,4]).uniq
于 2012-06-05T06:01:11.230 に答える
0

これを試して:

@users = Service.where(:id => [2,3,4])).map{|svc| svc.users}.uniq.flatten

また

@users = User.all(:include => :services, :conditions => ["services.id in ?", (2,3,4)])
于 2012-06-04T23:54:25.707 に答える