def user_add(request,): from base.forms import UserAddForm as UserForm if request.method == 'POST': form = UserForm(request.POST) if form.is_valid(): user = User.objects.create_user( form.cleaned_data['username'], form.cleaned_data['email'], form.cleaned_data['password'] ) user.first_name = form.cleaned_data['first_name'] user.last_name = form.cleaned_data['last_name'] user.email = form.cleaned_data['email'] user.is_staff = True user.is_active = True user.is_superuser = False user.save() for group in form.cleaned_data['groups']: user.groups.add(group) return HttpResponseRedirect( reverse('user_list')) else: return render_to_response('user_form.html', {'form':form}, context_instance=RequestContext(request)) form = UserForm() return render_to_response('user_form.html', {'form':form}, context_instance=RequestContext(request))
def user_edit(request, username): from base.forms import UserEditForm as UserForm user = get_object_or_404(User, username=username) if request.method == 'POST': form = UserForm(request.POST, instance=user) if form.is_valid(): user = form.save(commit=False) if form.cleaned_data['password']: user.set_password( form.cleaned_data['password'] ) user.save() form.save_m2m() return HttpResponseRedirect( reverse('user_list')) else: return render_to_response('user_form.html', {'form':form, 'user_id' : user.id }, context_instance=RequestContext(request)) # set initial so that the password doesnt display anything and so that groups are checked by default form = UserForm(instance=user, initial={'password':'', 'groups':[grp['id'] for grp in user.groups.all().values('id')]}) return render_to_response('user_form.html', {'form':form, 'user_id' : user.id }, context_instance=RequestContext(request))