继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修改个人信息
所以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')
跳转到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')
至此用户的注册功能完成....
接下来要完成用户登录d