【发布时间】:2020-10-23 21:59:06
【问题描述】:
settings.py
INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'django.contrib.sites',
# Local apps
'users.apps.UsersConfig',
# Third party apps
'allauth',
'allauth.account',
'allauth.socialaccount',
]
views.py
@user_passes_test(lambda u: u.is_superuser)
def create_group(request):
groups = Group.objects.all()
if request.method == 'POST':
group_name = request.POST.get('group_name')
group = Group.objects.create(name=group_name)
return HttpResponse(group.name)
else:
ctx = {'groups': groups}
return render(request, 'users/admin/create_group.html', ctx)
在这里,我创建了一个用于以编程方式创建用户组的视图。现在我想允许用户像 django-admin 仪表板一样批准权限。喜欢选择几个权限,然后按提交按钮将这些权限添加到所选组。 必须有某种方式这样做,因为 django admin 本身就是这样做的。我想知道如何才能完成这项工作。
【问题讨论】:
标签: python django django-permissions