0基础django_网站开发_day3_用户管理

继day2以后创建一个userInfomation.html。

  1 <!DOCTYPE html>
  2 <html lang="en">
  3 
  4 <head>
  5     <meta charset="UTF-8">
  6     <meta name="viewport" content="width=device-width, initial-scale=1.0">
  7     <title>Document</title>
  8 </head>
  9 
 10 <body>
 11 
 12 
 13     <form action="/user_management/userInfomation.html/" method="POST">
 14         <p>
 15         <input type="hidden" name="userId" value="{{listInfo.userid}}">
 16             
 17         </p>
 18 
 19         <p>
 20             用户名:
 21             <input type="text" name="userName" value="{{listInfo.username}}">
 22         </p>
 23 
 24         <p>
 25             身份证:
 26             <input type="text" name="userIdCard" value="{{listInfo.useridcard}}">
 27         </p>
 28 
 29         <p>
 30             年龄:
 31             <input type="text" name="userAge" value="{{listInfo.userage}}">
 32         </p>
 33 
 34         <p>
 35             性别:
 36             <input type="text" name="userSex" value="{{listInfo.usersex}}">
 37 
 38         </p>
 39 
 40         <p>
 41             电话:
 42             ||<input type="text" name="userTel" value="{{listInfo.usertel}}">
 43 
 44         </p>
 45 
 46         <p>
 47             状态:
 48             ||<input type="text" name="userStatus" value="{{listInfo.userstatus}}">
 49 
 50         </p>
 51 
 52         <p>
 53             信誉度:
 54             ||<input type="text" name="userEvaluate" value="{{listInfo.userevaluate}}">
 55 
 56         </p>
 57 
 58         <p>
 59             账户:
 60             ||<input type="text" name="userAccount" value="{{listInfo.useraccount}}">
 61 
 62         </p>
 63 
 64         <p>
 65             住址:
 66             <input type="text" name="userAddress" value="{{listInfo.useraddress}}">
 67 
 68         </p>
 69 
 70         <p>
 71             头像:
 72             <img src="{{listInfo.userpic}}">
 73             ||<input type="text" name="userPic" value="{{listInfo.username}}">
 74 
 75         </p>
 76 
 77         <p>
 78             注册时间:
 79             ||<input type="datetime" name="userRegdate" value="{{listInfo.userregdate}}">
 80 
 81         </p>
 82 
 83         <p>
 84             用户身份:
 85             ||<input type="text" name="userIdentity" value="{{listInfo.useridentity}}">
 86 
 87         </p>
 88 
 89         <p>
 90             国籍:
 91             <input type="text" name="userNative" value="{{listInfo.usernative}}">
 92 
 93         </p>
 94 
 95         <p>
 96             教育背景:
 97             <input type="text" name="userEduBack" value="{{listInfo.usereduback}}">
 98 
 99         </p>
100 
101         <p>
102             用户等级:
103             ||<input type="text" name="userScale" value="{{listInfo.userscale}}">
104         </p>
105 
106         <p>
107             <input type="submit" value="修改">
108         </p>
109     </form>
110 
111 
112 
113 </body>
114 
115 </html>
userInfomation.html

编写逻辑:

当我用户注册了账号以后随即跳转进入userInfomation.html修改个人信息

所以register里面处理逻辑代码是

 1 class register(View):  # 继承View类作为父类
 2     # 注册账户
 3 
 4     # 重写父类方法,该方法可作为装饰器功能
 5     # def dispatch(self, request, *args, **kwargs):  # 自定制 dispatch方法,除了可以利用父类中原dispatch方法,还可以自定制处理逻辑
 6     #     obj = super(register,self).dispatch(request, *args, **kwargs) # 传入register对象作为参数,调用父类中的方法
 7     #     return obj
 8 
 9     def get(self, request):  # 请求为get请求时,自动调用该方法
10         return render(request, 'register.html')
11 
12     def post(self, request):   # 请求是POST请求时,自动调用该方法
13         userTel = request.POST.get('userTel')
14         userPsw = request.POST.get('userPsw')
15         if isRegister(userTel) == False:
16             Usersec.objects.create(
17                 usertel=userTel,  # 表中字段生成到models.py自动变为小写
18                 userpsw=userPsw,
19             )
20             '''
21             查询userTel对应的Id
22             '''
23             obj = Usersec.objects.filter(usertel=userTel)
24             userId = obj[0].userid
25             '''
26             通过这个userId忘userInfo里面写默认数据
27             '''
28             Userinfo.objects.create(
29                 userid=userId,
30                 username='尊敬的友爱家政用户',
31                 useridcard='',
32                 userage='',
33                 usersex=3,
34                 usertel=userTel,
35                 userstatus=0,
36                 userevaluate=0,
37                 useraccount=0,
38                 useraddress='',
39                 userpic='/static/header.png',
40                 userregdate=getTime(),
41                 useridentity=0,
42                 usernative='',
43                 usereduback='',
44                 userscale=0,
45             )
46             listInfo = Userinfo.objects.filter(userid=userId)
47             return render(request, 'userInfomation.html', {'listInfo': listInfo[0]})
48         else:
49             return HttpResponse('flase')
register

 跳转到userInfomation的时候,因为要更新用户传入的信息的新值,则需要用到update()

 1 class userInfomation(View):  # 继承View类作为父类
 2     # 修改个人信息
 3     def get(self, request):  # 请求为get请求时,自动调用该方法
 4         return HttpResponse('getInfo')
 5 
 6     def post(self, request):   # 请求是POST请求时,自动调用该方法
 7         # 更新信息
 8         userId = request.POST.get('userId')
 9         username = request.POST.get('userName')
10         useridcard = request.POST.get('userIdCard')
11         userage = request.POST.get('userAge')
12         usersex = request.POST.get('userSex')
13         useraddress = request.POST.get('userAddress')
14         usernative = request.POST.get('userNative')
15         usereduback = request.POST.get('userEduBack')
16         obj = Userinfo.objects.filter(userid=userId)
17         obj.update(**{
18             'username':username,
19             'useridcard':useridcard,
20             'userage':userage,
21             'usersex':usersex,
22             'useraddress':useraddress,
23             'usernative':usernative,
24             'usereduback':usereduback,
25         }
26         )
27         return render(request, 'register.html')
userInfomation

至此用户的注册功能完成....

接下来要完成用户登录d

猜你喜欢

转载自www.cnblogs.com/Oliva/p/12529527.html