Ответ 1
Django имеет встроенную систему групп. Всякий раз, когда у вас возникает такой вопрос, я рекомендую искать в документах Django, которые обширны, полезны и хорошо написаны.
Пока вы используете приложение django.contrib.auth
, у вас есть доступ к группам. Затем вы можете назначить разрешения для этих групп.
from django.contrib.auth.models import User, Group, Permission
from django.contrib.contenttypes.models import ContentType
content_type = ContentType.objects.get(app_label='myapp', model='BlogPost')
permission = Permission.objects.create(codename='can_publish',
name='Can Publish Posts',
content_type=content_type)
user = User.objects.get(username='duke_nukem')
group = Group.objects.get(name='wizard')
group.permissions.add(permission)
user.groups.add(group)