Rails :: Взаимодействие текущего пользователя с данными - PullRequest
1 голос
/ 05 ноября 2011

Допустим, у меня есть куча постов, и я хочу знать, нравятся ли они current_user. где я могу поставить этот код: контроллер? модель? В devise нет простого способа получить доступ к current_user из модели, и кажется очень неудобным добавлять @posts.each {|p| p.liked_this = p.liked_this?} ко всем моим контроллерам.

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

1 Ответ

2 голосов
/ 05 ноября 2011

Вы можете сделать запросы из контроллера.

Posts.liked_by(current_user)

(где liked_by - метод в вашей Post модели.)

Или вы можете использовать гем sentient_user , чтобы ваши модели могли получить доступ к вашему текущему пользователю.

В предыдущем проекте мы интенсивно использовали sentient_user, потому что наш уровень модели очень заботился о правах пользователя и т. Д.

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