Como verificar as permissões do usuário atual de um grupo no Django?
Eu tenho um grupoEuropartsBuyer
e modelo chamadoProduct
.
O código a seguir adiciona uma permissão ao modelo do produto.
class Meta:
permissions = (
("can_add_cost_price", "Can add cost price"),
)
Em uma das minhas visões, tenho o código a seguir para adicionar essa permissão a esse grupo.
europarts_buyer, created = Group.objects.get_or_create(name='EuropartsBuyer')
add_cost_price = Permission.objects.get(codename='can_add_cost_price')
europarts_buyer.permissions.add(add_cost_price)
Com a ajuda do Django Admin, adicionei um usuário ao grupoEuropartsBuyer
.
Quando eu uso o seguinte código em outro modo de exibição
if request.user.has_perm('can_add_cost_price'):
do something
o resultado deve serTrue
mas está mostrandoFalse
. Portanto, o código da cláusula if não é executado.
Eu importei o usuário atualmente conectado no shell do Django e, quando testo a permissão novamente, mostra False.
O que eu estou fazendo errado aqui?