1 # 注册********
2
3
4 def userreg(request):
5 if request.method == 'POST':
6 dict = request.POST.dict() # 把新用户输入的邮箱、密码、昵称等转成字典形式
7 try:
8 del dict['csrfmiddlewaretoken']
9 # 保存新用户到数据库的User表 注意create
10 user = Users.objects.create(createtime=time.strftime('%Y-%m-%d %H:%M:%S', time.localtime(time.time())),**dict) # **dict必须放到最后
11 # 用数据库的自增长id写入字典的id
12 dict['id'] = user.id
13 # Users.objects.create(email=email, pwd=pwd, nicheng=nicheng) #创建一个对象实例
14 request.session['dict'] = dict # 设置注册session
15
16 return redirect('/userlogin') #重定向至登录,实现登陆后注册
17 except Exception as err:
18 errStr = err.args[1]
19 if 'emailuniq' in errStr:
20 return HttpResponse('<script>alert("用户名重复");location.href="/";</script>')
21 elif 'nichenguniq' in errStr:
22 return HttpResponse('<script>alert("昵称重复");location.href="/";</script>')
23 else:
24 return HttpResponse('<script>alert("请正确提交");location.href="/";</script>')
25
26
27 # 登录*********↓↓↓↓↓
28
29
30 def userlogin(request):
31 if request.method == 'POST': #判断是否是POST方式登录
32 rs = Users.objects.filter(email=request.POST.get('email'), pwd=request.POST.get('pwd')).first()
33 if rs != None: #如果匹配成功
34 loginbean = {}
35 loginbean['id'] = rs.id
36 loginbean['nicheng'] = rs.nicheng
37 loginbean['role'] = rs.role
38 request.session['loginbean'] = loginbean #保存session
39 # return render(request, 'home.html')
40 if rs.role > 0:
41 return redirect('../home')
42 else:
43 return redirect('../adminspace')
44 else:
45 return HttpResponse('<script>alert("用户名或密码错误");location.href="/";</script>')
46 else: #这里以下是注册传过来的
47 dict = request.session['dict']
48 if dict != None:
49 loginbean = {}
50 loginbean['id'] = dict['id']
51 loginbean['nicheng'] = dict['nicheng']
52 loginbean['role'] = 1
53 request.session['loginbean'] = loginbean
54 del request.session['dict']
55 return render(request, 'home.html')
56 else:
57 return HttpResponse('<script>alert("请登录");location.href="/";</script>')