J'ai un groupe EuropartsBuyer
et le modèle nommé Product
.
Le code suivant ajoute une permission au modèle de produit.
class Meta:
permissions = (
("can_add_cost_price", "Can add cost price"),
)
Dans une de mes vues, j'ai le code suivant pour ajouter cette permission à ce groupe.
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)
Avec l'aide de Django Admin, j'ai ajouté un utilisateur au groupe EuropartsBuyer
.
Lorsque j'utilise le code suivant dans une autre vue
if request.user.has_perm('can_add_cost_price'):
do something
le résultat est censé être True
mais il montre False
. Ainsi, le code sous la clause if ne s'exécute pas.
J'ai importé l'utilisateur actuellement connecté dans le shell Django et lorsque je teste à nouveau l'autorisation, le résultat est Faux.
Qu'est-ce que je fais de mal ici ?