Как предоставить разрешение на редактирование/удаление ссылок для каждого пользователя в пользовательском индексе рельсов?
Я использую Rails3, Devise и CanCan для определения способностей на основе ролей.
Я хотел бы, чтобы текущий пользователь мог видеть и получать доступ к ссылке для редактирования/удаления своего профиля на индексной странице пользователя. Они не должны иметь возможность видеть или получать доступ к этим ссылкам для всех других пользователей.
Я установил следующее в представлении индекса:
<% if can? :update, @user %>
<%= link_to 'Edit', edit_user_registration_path(@user) %> |
<% end %>
И в абилс.рб
def initialize(user)
can :update, User, :id => user.id
if user.role? :super_admin
can :manage, :all
end
end
Мой суперадмин может видеть и редактировать ссылки для всех пользователей в индексе.
Мой пользователь не может видеть ссылки ни для кого, даже для себя.
Чем больше я читаю об этом, тем больше запутываюсь, что с разработкой, канканом и пользовательской моделью играют роль.
Я был бы признателен за подтверждение того, что я на правильном пути, и был бы признателен за любые указатели на полезную информацию, которая помогла бы мне понять это.
Большое спасибо