Как я могу установить возможность разрешать пользователю редактировать только свой профиль? Ссылка на редактирование размещается на их собственной странице показа примерно так:
<% if can? :update, User %>
<div class="button">
<%= link_to 'edit my profile', edit_user_path(@user) %>
</div>
<% end %>
Способность в настоящее время выглядит следующим образом:
if user.role == "author"
can :create, Review
can :update, Review do |review|
review.try(:user) == user
end
can :update, User, :id => user.id
end
У меня также есть load_and_authorize_resource в пользовательском контроллере.
Но это не работает, пользователь (с ролью автора) все еще может видеть и использовать кнопку редактирования на всех страницах показа пользователей.
Что я здесь не так делаю?
Большое спасибо за любую помощь, она очень ценится!