Devise + CanCan просто запрещают другим пользователям редактировать объекты
Как бы вы помешали другим пользователям редактировать объект, скажем, объект профиля, который не принадлежит самому себе?
Большинство онлайн-примеров - это комплексы с несколькими пользовательскими ролями, но я не смог заставить это работать, хотя должно быть просто:
def initialize(user)
can :update, Profile do |profile|
profile.try(:user) == current_user
end
end
И внутри моего ProfilesController # редактировать
authorize! :update, @profile