Имейте в виду, что все, что это делает, - это нахождение всех событий, на которые другие пользователи имеют RSVP, так что я не думаю, что вы подходите к этому правильному пути ...
Это то, что вы просите:
@eventsmy = Event.joins(:rsvp).where('rsvps.user_id != ?', current_user.id)
Я думаю, что вам действительно нужно ... Если вы хотите найти события, на которые текущий пользователь был приглашен, но не имеет RSVP, то вам нужно сделать что-то вроде:
# RSVP Table:
:id => primary_key
:event_id => integer
:user_id => integer
:rsvp => boolean
И тогда вы можете сделать:
@eventsmy = Event.joins(:rsvp).where('rsvps.user_id = ? AND rsvps.rsvp = ?', current_user.id, false)
Который найдет все события для текущего пользователя, к которым у текущего пользователя нет RSVP'd (поскольку RSVP равен false
).