Проверка наличия разрешения у группы Django
Я разрабатываю сайт на Django, где я могу создавать группы, которым можно назначать разрешения. Я также могу назначать группы пользователям. Есть простой способ проверить, есть ли у пользователя разрешение:
user.has_perm('app_name.permission_code_name')
Я хочу знать, есть ли простой способ проверить, есть ли разрешение у определенной группы (без участия пользователя)?
Вы можете сделать примерно следующее:
for group in Group.objects.all():
permissions = group.permissions.all()
# do something with the permissions
Или, лучший способ был бы следующим:
group_ids = Group.objects.all().values_list('id', flat=True) Permission.objects.filter(group__id__in=group_ids)
Эта ссылка может помочь вам в дальнейшем.