你有一个可以从缺席检查的范围吗?

时间:2013-04-04 09:22:55

标签: ruby-on-rails scopes

我的数据库中有一个Invites表,当我以用户身份执行任务时,我想将Event。id传递给范围User.not_invited_to(event)

如何构建此范围以检查用户ID是否在那里?

class User
  has_many :invites, :foreign_key => 'participant_id'
  ...
end

class Invite
  belongs_to :participant, :class_name => "User", :foreign_key => "participant_id"
  ...
end

1 个答案:

答案 0 :(得分:0)

您可以使用event.invite_ids

scope :not_invited, lambda { |event| where("id not in (?)", event.invite_ids) }