版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
使用cookie
首先在用户登录的情况下能够显示,如果用户没有登录,跳转到login页
登录装饰器
删除cookie
登出
在退出登录的时候,删除用户cookie
session
session就是为了解决cookie不安全的问题而提出的一种会话机制
session本身就是一种回话:指一次通信从开始到结束,只有在web开发当中,session才会以绘画的机制出现
web的session是将用户的信息存在服务器上面的一种web身份校验技术,session需要结合cookie使用,需要通过cookie给用户下发一个id(session_id),然后将用户的具体的信息保存在数据库中
cookie和session的却别
- cookie放在本地的,session放在服务器上面,通常是数据库当中
- 校验cookie速度快,但是安全性不高
- 校验session速度慢,但是安全性相对好
session的操作
session的创建
session对象在django当中以一个类字典对象出现,我们可以使用字段的方法对其进行操作
session的获取
session的删除
def logout(request):
response = HttpResponseRedirect('/index/')
response.delete_cookie('name')
# 删除session 目的是用户再次使用相同的sessionid 进行访问,那倒的session的值是不一样的
# del request.session['username'] # 删除指定session 删除的是保存在服务器上面的session的值
request.session.flush() # 删除所有的session
return response
del删除前
del删除后:
flush()删除后–彻底清除:
修改博客相关页面
通过前端传递想要获取文章类型,视图查询相关类型的文章,进行返回
视图
路由:
模板
完成一个完整的登录页面
创建一个工程和子应用
配置:
- 注册子应用
- 创建templates,static
- 配置templates和static
- 配置数据库
创建模型
数据迁移
- python manage.py check
- python manage.py makemigrations
- python manage.py migrate
查看数据库
pycharm默认没有安装sqllit驱动
安装缺少的驱动文件
移除:
移除以后拖进去
使用模板
将模板中的除了html文件,放在项目中的static目录下
将register.html文件放在templates目录下
1.调用静态文件
修改静态文件的路径
2.修改register.html中的form表单
3.注册视图
4.登录
将register.html作为login.html
修改login.html
视图
登录装饰器
5.登出
模板
login页面
register页面
index页面