Espree Permissões de funções personalizadas
Estou tentando dar algumas funções personalizadas dentro de permissões específicas da série. Não consigo encontrar esta resposta em qualquer lugar
role_ability.rb
class RoleAbility
include CanCan::Ability
def initialize(user)
user || User.new # for guest
if user.has_role? "admin"
can :manage, :all
elsif user.has_role? "retailer"
can :manage, Product
else
can :read, :all
end
end
end
Eu pensei que isso poderia ser uma ideia popular, de permitir que um usuário com a função 'gerente' gerencie apenas produtos e outros modelos específicos ...
se eu mudar
elsif user.has_role? "retailer"
can :manage, Product
par
elsif user.has_role? "retailer"
can :manage, :all
Funciona como esperado ... Posso acessar toda a área de administração
Eu só quero que o "Varejista" seja capaz de: gerenciar produtos tho !! ;)
"admin" é apenas uma função associada a um usuário, ou seja, todas as funções são Usuário
Você provavelmente pode ver aonde isso está indo, os varejistas podem se inscrever e vender itens próprios ... esse é o objetiv
Qualquer ponteiros ??