Django学习第三天

命名空间和URL的反向解析
如果我们在模板中的链接这样写,就固定了
在这里插入图片描述
为了动态生成上面的url,我们引入了namespace 和name ,分别在这个地方使用
在这里插入图片描述
在应用下面的url.py文件里面,我们可以如下面那样写
在这里插入图片描述
最后,我们在模板文件里面写的url可以如下写
在这里插入图片描述
就是再goods路径下面找到index

视图,其实就是视图函数
1,错误视图,404视图,这个可以自己定义,就是没有找到相应的页面;在模板路径templates里面定义
在这里插入图片描述
写完404页面,在setting里面进行配置一下
在这里插入图片描述
之后,当我们访问这个页面,找不到的页面,会自动显示这个404页面

视图中的两个常用对象
在这里插入图片描述
request对象,是浏览器发送给服务器的,里面有一些从浏览器端带来的信息,有几种属性和方法可以操作
在这里插入图片描述
在这里插入图片描述
POST 一般获得的是表单发送来的数据,其中get()方法里面的键就是表单标签属性name的值

其中 GET POST属性,又有get() 和getlist()方法,根据键获得值,区别,get()可以根据一个键名获得一个值,getlist()可以根据一个键的值获得多个值,返回的是一个列表。
在这里插入图片描述
在这里插入图片描述

Response对象,是程序员自己建,返回给浏览器数据的
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
cookie,一般是在浏览器端存数据的,可以存放账号和密码,但是很少有人这么存,不安全,当我们登录账号和密码,到数据库匹配时,服务器会生成一个token字符串,数据库保留一份,发到浏览器cookie里面保留一份,当再次发送信息,只需要把这个token发送过去和数据库里的token对比就可以了。

下图就是设置cookie
在这里插入图片描述
重定向
在这里插入图片描述
在这里插入图片描述
Seesion 状态保持

http协议是无状态的,每一次请求都是新的,不记得以前的请求,所以我们如果已经登录一个页面,下次再请求时候,会不记得我们登录了,所以为了实现状态保持,就要在浏览器端或者服务器端保留通信数据

session是在服务器端存储数据的,我们只需要在浏览器端的cookie里面存储session_id ,就可以查找到服务器端对应的session数据(比如账号和密码)

1.如何启用session呢,?
在setting配置文件里面
在这里插入图片描述
在这里插入图片描述
2,
在这里插入图片描述
上图的get(key ,默认),如果通过key没有获得值,只能将默认值返回

下面是设置session值
在这里插入图片描述
在这里插入图片描述

下面是清楚session 退出登录的方法(清楚session)
在这里插入图片描述
session的设置一般都是暂时短暂的,如果不进行清空,一般是半个月自动清空;手动定时清空
在这里插入图片描述
当set_expiry(0) 时,表示关闭浏览器时,session失效清空;

猜你喜欢

转载自blog.csdn.net/steve1988717/article/details/86613625