Как проверить, связан ли текущий пользователь с текущим сообщением в jointable? - PullRequest
0 голосов
/ 23 декабря 2018

У меня есть приложение с моделью User (созданной с помощью Devise Gem) и моделью Post.И пользователь, и модель находятся в отношении has_and_belongs_to_many.У меня есть таблица присоединения, куда я добавляю каждого создателя сообщения (позже я позволю создателю сообщения добавить больше редакторов для сообщения, но в данный момент это не имеет значения).Проблема в том, что я хочу проверить, является ли current_user одним из пользователей, которому разрешено редактировать сообщение.

Я уже пытался проверить, включен ли текущий пользователь в @ post.users, но, похоже, это не рабочее решение.для этой проблемы.

@post.users.include?(current_user)

В этот момент я даже понимаю, почему это не работает, но я не представляю, как проверить другую функцию, возвращающую bool в зависимости от таблицы users_posts в базе данных.

1 Ответ

0 голосов
/ 23 декабря 2018

Это может помочь вам:

Либо проверить с помощью true или false, как упомянуто в этом сообщении Rails - проверить, существует ли запись в ассоциации has_many

ИЛИ

@post.users.find(current_user.id)

Возвращается либо пользовательский объект, если он найден, либо возникнет ошибка ActiveRecord::RecordNotFound.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...