Нужна помощь в настройке CanCanCan для activeadmin
Мне нужна помощь для настройки CanCanCan с помощью ActiveAdmin. У меня все остальное работает, включая разработку. Я могу ограничить меню, используя devise, но если вы знаете URL, скажем, для редактирования, вы все равно можете редактировать этот ресурс. Я хочу ограничить обычного пользователя от редактирования / создания каких-либо ресурсов, но это не похоже на работу.
Active_Admin.rb
config.cancan_ability_class = ActiveAdmin::CanCanAdapter
Ability.rb (просто из коробки)
class Ability
include CanCan::Ability
def initialize(user)
# Define abilities for the passed in user here. For example:
#
# user ||= User.new # guest user (not logged in)
if user.admin?
can :manage, Student
else
can :read, Student
end
end
end
Пользовательская модель.
admin:boolean
и если я войду в систему с пользователем, который не является администратором, я все еще могу создавать / редактировать / удалять, я просто хочу ограничить их только для чтения.
Пожалуйста, помогите, я борюсь с этой единственной функцией, которую мне нужно завершить.
заранее спасибо
1 ответ
Изменить это думает:
config.authorization_adapter = ActiveAdmin::CanCanAdapter
config.cancan_ability_class = Ability
authorization_adapter
сообщает активному администратору, какой адаптер использовать.cancan_ability_class
сообщает адаптеру, какой класс он должен использовать.
Если это все еще не работает, попробуйте переименовать Ability
в AdminAbility
,