def register(request): if request.method == 'GET': form = RegistForm() return render_to_response("register.html", RequestContext(request, {'form': form})) else: form = RegistForm(request.POST) register_flag = True username_tips = False password_tips = False email_tips = False tips_message = '' if form.is_valid(): username = request.POST.get('username', '') password = request.POST.get('password', '') password_again = request.POST.get('password_again', '') email = request.POST.get('email', '') try: user = User.objects.get(username=username) except User.DoesNotExist: pass else: tips_message = u'用户名已存在' username_tips = True register_flag = False if register_flag == True and password != password_again: tips_message = u'两次密码不一致' password_tips = True register_flag = False sendEmail = dict() sendEmail['from'] = '*****@*****.**' with open('media/email/register.txt') as f: allEmail = f.read().split('\n') sendEmail['subject'] = allEmail[0] sendEmail['text'] = ''.join(allEmail[1:]) % username.encode('utf-8') emailReturnNo = send_mail(sendEmail['subject'], sendEmail['text'], sendEmail['from'], [email], fail_silently=False) if 0 == emailReturnNo: tips_message = u'邮箱有误' email_tips = True register_flag = False if register_flag: user = User.objects.create_user(username=username, password=password, email=email) user.save() usermessage = UserMessage() print type(request.user) usermessage.user = user usermessage.save() return HttpResponseRedirect('/accounts/login/') return render_to_response( 'register.html', RequestContext(request, {'form': form, 'tips': True, 'tips_title': u'错误!', 'tips_message': tips_message, 'username_tips': username_tips, 'password_tips': password_tips, 'email_tips': email_tips}))