快好知 kuaihz

Django 简单实现登录界面

讲解对象:Django 简单实现登录界面

作者:融水公子 rsgz

知识梳理:

0.1http协议是无状态的

0.2每次请求都是一次新的请求

0.3不记得以前的请求

0.4客户端与服务器端的一次通信就是一次会话

0.5实现保持状态,在客户端或者服务器端存储有关会话的数据

0.6cookie存储id:a,session存储一个映射a:good,数据库直接存储good

0.7session在服务器端,cookie在客户端,cookie存储session_id

0.8 状态保持的目的:在一段时间内跟踪请求者的状态,可以是实现跨页面访问当前的请求者的数据

0.9 不同的请求者之间不会共享这个数据

0.10 要用session需要先启用session(setting.py文件中有设置)

0.11 启用session后,每个HttpRequest对象都有一个session数据

0.12 session属性就是类似字典的对象

0.13 get(key,default=None) 这个是根据键获取session值

0.14 clear()可以清空所有的会话

0.15 flush()删除当前的会话 删除会话的cookie

0.16 还有一种删除的方式,需要预先引入一个类,以后再说

1 模板下面新建main.html

内容:

   

   我的


   

欢迎:{{username}}

   登录



2 模板下面新建login.html

   

   登录


   

       

       

   



3 添加三条路由

   url(r"^main/$", views.main),

   url(r"^login/$", views.login),

   url(r"^showmain/$", views.showmain),

4 添加视图函数

fromdjango.shortcuts import redirect

defmain(request):

   # 取出session

   username=request.session.get("name","游客")# 第二个参数表示取值没有取到就是游客代替

   return render(request,"myapp/main.html",{"username":username})

deflogin(request):

   return render(request,"myapp/login.html")

defshowmain(request):

   username=request.POST.get("username")

   request.session["name"]=username # 存session

   return redirect("/rsgz/main/")

5 开启服务器

pythonmanage.py runserver

6 网页测试

网址:http://127.0.0.1:8000/rsgz/main/

会调到注册页面,我们完善用户名之后点击登录

之后又会返回到这个界面了。游客被我的大名取代了  欢迎:融水公子

7 打开Navicat软件 数据库查看session缓存记录

点击这个session

上面就是session缓存的记录了。

本站资源来自互联网,仅供学习,如有侵权,请通知删除,敬请谅解!
搜索建议:界面  界面词条  登录  登录词条  简单  简单词条  实现  实现词条  Django  Django词条  
综合

 如何恢复电脑删除的文件?

虽然说现如今电脑的硬盘空间已经足够大了,已经让很多人都无法将其使用完了,但是一般人都坚信一个原则,那便是不要的文件要尽早清理掉,不用的文件要赶快删除掉,若是让这...(展开)