I have a registration method in views.py
def register_page(request):
if request.method == 'POST':
form = RegistrationForm(request.POST)
if form.is_valid():
user = User.objects.create_user(username=form.cleaned_data['username'],
password=form.cleaned_data['password1'],
email=form.cleaned_data['email'])
if request.POST.get("admin", ""):
content_type = ContentType.objects.get_for_model(User)
permission = Permission.objects.get(codename='admin_can_manage_users')
user.user_permissions.add(permission)
new_user = authenticate(username=form.cleaned_data['username'], password=form.cleaned_data['password1'])
login(request, new_user)
return redirect('payment_list')
form = RegistrationForm()
variables = RequestContext(request, {'form': form})
return render_to_response('registration/register.html',variables)
I also have a register form with standart fields and additional manually-added checkboxes. I want to check if one checkbox is checked and if so add permissions to users.
<form method="post" action=".">
{{ form.as_p }}
<input type="radio" class='radio-button' name="regular" id="regular"/><label for="regular">User</label>
<input type="radio" class='radio-button' name="manager" id="manager"/><label for="manager">Manager</label>
<input type="radio" class='radio-button' name="admin" id="admin"/><label for="admin">admin</label>
<input type="submit" value="register" />
</form>
Now permissions aren't assigned automatically. Previously I assigned this permission to first user and it worked but when I tried to assign it to another user got nothing.