Как проверить, присутствует ли текущий идентификатор пользователя (один раз) в различных экземплярах модели? - PullRequest
2 голосов
/ 06 февраля 2012

У меня есть четыре модели: сообщение, комментарий, голосование, пользователь (разработка). Пользователи могут голосовать за посты и комментарии. Модель голосования имеет атрибут user_id, в котором хранится идентификатор пользователя, который проголосовал за публикацию или комментарий.

Итак, когда пользователи голосуют, структура выглядит следующим образом:

Пост (: id = 29)

Голосовать (: user_id = 1), Голосовать (: user_id = 3), Голосовать (: user_id = 5), Голосовать (: user_id = 2)

4 голоса (@ post.votes.count)

Я хотел бы иметь следующее:

Если идентификатор current_user присутствует в атрибуте user_id экземпляров голосования этого поста, выполните X.

Например, следуя приведенному выше примеру, если current_user имеет ID 3, X будет запущен. Если current_user имеет идентификатор 4, он не будет.

Есть предложения для этого?

1 Ответ

1 голос
/ 06 февраля 2012

Вы можете сделать это:

if @post.votes.exists?(:user_id => current_user.id)
  # Do something
end
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...