1
私はUser
オブジェクトのインスタンスを作成しています。作成自体は標準User.objects.create_user
コールであり、正常に動作します - ユーザーが作成されます。その後、私は彼または彼女にいくつかの権限を追加しようとしている:あなたが見ることができるようにユーザーがDjango Rest Frameworkに保存されたときに権限を追加する
for name in ('view_restaurant', 'change_restaurant', 'delete_restaurant',
'view_meal', 'add_meal', 'change_meal', 'delete_meal',
'view_order', 'delete_order',
'view_historicalorder', 'add_historicalorder', 'change_historicalorder',
'view_orderitem',
'view_historicalorderitem',
'view_restaurantemployee', 'add_restaurantemployee', 'change_restaurantemployee', 'delete_restaurantemployee'):
permission = Permission.objects.get(codename=name)
print(permission is None)
user.user_permissions.add(permission)
user.save()
print(user.has_perm(permission))
、最後の行で、私は、ユーザーが適切なアクセス権が割り当てられたかどうかをチェックし、数行よ上記の許可がNone
かどうか確認しています。その結果、アクセス権オブジェクトは決してnoneになりませんが、user.has_perm
呼び出しは常にfalseを返します。私はここで間違って何をしていますか?
ありがとう:さておき、私はそうのようなコードを簡素化するために勧告することができるように、それは、この形式の文字列
を期待します! –