如何从Django中的注册表单(用户)为用户分配GROUP?

时间:2018-07-09 17:20:59

标签: python django

我面临的问题是,我不知道如何从Django中模板(应用程序)的正式注册中直接将组分配给用户。我的用户注册视图是这样的:

def UserRegister(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            form.save()
            return redirect('login')
    else:
        form = UserCreationForm()
    return render(request, 'register/user_register.html', {'form': form})
  • POSTDATA:要分配角色,我使用django-role-permissions。我不想注册一个组,我只想将其包含在注册用户中,而不必在Django面板中进行操作。

1 个答案:

答案 0 :(得分:2)

通常,您将从django中提取组模型。然后,在模型中查询要添加用户的组。这是下面的方法。

from django.contrib.auth.models import Group

def UserRegister(request):
    if request.method == 'POST':
        form = UserCreationForm(request.POST)
        if form.is_valid():
            user = form.save()
            group = Group.objects.get(name='group_name')
            user.groups.add(group)
            return redirect('login')
    else:
        form = UserCreationForm()
    return render(request, 'register/user_register.html', {'form': form})
相关问题