from django.shortcuts import render, redirect
import re
from django.urls import reverse # 2.0中与前版本不同
from django.contrib.auth.models import User
from django.contrib.auth import get_user_model # 要加上这句话不然会报错(1)
User = get_user_model()
# Create your views here.
def register(request):
return render(request,'register.html')
def register_handle(request):
'''进行注册处理'''
#接收数据
username = request.POST.get('user_name')
password = request.POST.get('pwd')
email = request.POST.get('email')
allow =request.POST.get('allow')
#进行数据校验
if not all([username,password,email]):
# 数据不完成
return render(request, 'register.html',{'errmsg':'数据不完整'})
if allow != 'on':
return render(request, 'register.html',{'errmsg':'请同意协议'})
# 校验邮箱
if not re.match(r'^[a-z0-9][\w.\-]*@[a-z0-9\-]+(\.[a-z]{2,5}){1,2}$',email):
return render(request,'register.html',{'errmsg':'邮箱格式不正确'})
#进行业务处理:进行用户注册
user = User.objects.create_user(username,email,password)
user.is_active = 0
user.save()
#返回应答,跳转到首页
return redirect(reverse('goods:index'))
(1)AttributeError: Manager isn’t available; ‘auth.User’ has been swapped for ‘user.User’