def user_register(request): curtime=get_datetimenow(); if request.user.is_authenticated(): return HttpResponseRedirect("/register/") try: if request.method=='POST': username=request.POST.get('username','') password1=request.POST.get('password1','') password2=request.POST.get('password2','') email=request.POST.get('email','') nickname=request.POST.get('nickname','') errors=[] registerForm=RegisterForm({'username':username,'password1':password1,'password2':password2,'email':email,'nickname':nickname}) if not registerForm.is_valid(): errors.extend(registerForm.errors.values()) return render(request,"register.html",{'curtime':curtime,'username':username,'email':email,'nickname':nickname,'errors':errors}) if password1!=password2: errors.append(u"两次输入的密码不一致!") return render(request,"register.html",{'curtime':curtime,'username':username,'email':email,'nickname':nickname,'errors':errors}) filterResult=Users.objects.filter(username=username)#c************ if len(filterResult)>0: errors.append(u"用户名已存在") return render_to_response("/register/",RequestContext(request,{'curtime':curtime,'username':username,'email':email,'nickname':nickname,'errors':errors})) user=Users() user.username=username user.set_password(password1) user.email=email user.nickname=nickname user.save() newUser=auth.authenticate(username=username,password=password1) if newUser is not None: auth.login(request, newUser) return HttpResponseRedirect(settings.ROOTPATH) except Exception,e: errors.append(str(e)) #这个errors会出来一堆u/什么什么的未编码utf8( return render(request,"register.html",{'curtime':curtime,'username':username,'email':email,'nickname':nickname,'errors':errors})