Я работаю над веб-приложением Ruby on Rails 3.
У меня есть таблица с именем User
с именем role
. Я ищу лучший способ скрыть части представления от пользователей, которые имеют «неправильную» роль для этих частей представления.
Например, я хочу, чтобы все пользователи могли видеть страницу пользователей index
, но я хочу, чтобы только пользователи с ролью - admin
могли редактировать других пользователей.
Итак, сначала я блокирую действие edit
, используя filter_by
, но я также хочу, чтобы кнопка edit
не появлялась.
Текущий пользователь сохраняется в сеансе, поэтому проверка роли пользователя очень проста.
То, что я спрашиваю, есть ли простой способ сделать это, кроме очевидного оператора if
перед каждой кнопкой, которую я хочу скрыть. Я бы подумал, что у рельсов был бы простой способ сделать это, я не смог бы его найти.