У меня тут действительно странная проблема.Вот строка, вызывающая все проблемы в моем ability.rb
can [:edit, :update, :destroy], User, id: user.id
Когда я запускаю консоль rails, я получаю ожидаемое поведение:
u = User.last
a = Ability.new(u)
a.can?(:edit, u)
=> true
a.can?(:edit, User.first)
=> false
Однако, когда я запускаю веббраузер, войдите в систему как пользователь и попробуйте отредактировать еще один, CanCanCan хранит молчание.Если я заменю can
на cannot
, я не смогу редактировать ни одного пользователя.Это как если бы оно не выглядело как условие.
Мой UsersController
получил эту строку сверху
authorize_resource
Я застрял с этим, любая помощь будет с удовольствием оценена.
cancancan 2.3.0
рельсы 5.2.1