模板的使用 session cookie

上一篇django 里的增删改查

创建模板

在工程目录下,创建 templates

在这里插入图片描述

1 .配置路径

setting.py文件夹里在这里插入图片描述

2.创建视图

在这里插入图片描述

3.路由
from django.urls import path
from booktest import views

urlpatterns = [
    path('testview/', views.TestView.as_view())
]
4.模板文件

在这里插入图片描述
上面四个步骤步准备完成之后,开始测试
在这里插入图片描述
模板逻辑已经跑通了


查询数据 返回 显示在模板里

class BookView(View):
    def get(self, request):
        books = BookInfo.objects.all()
        print(books)
        dict1 = {
            'books': books,
        }
        return render(request, 'booktest/book.html', dict1)

Cookie

设置cookie 使用 response对象 set_cookie
class BookView(View):
    def get(self, request):
        books = BookInfo.objects.all()
        print(books)
        dict1 = {
            'books': books,
        }
        res = render(request, 'booktest/book.html', dict1)
        res.set_cookie('name', 'zhuzhuzhu', max_age=100000)
        return res
获取cookie 使用request对象
class CookieView(View):
    def get(self, request):
        name = request.COOKIES.get('name')
        print(name)
        return HttpResponse(name)

把session存到redis里

django配置,虚拟机连接windos的redis解决方法

CACHES = {
    'default': {
        'BACKEND': 'django_redis.cache.RedisCache',
        'LOCATION': 'redis://192.168.81.42/6',
        'OPTIONS': {
            'CLIENT_CLASS': 'django_redis.client.DefaultClient',
        }
    }
}
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'  # cashe是存缓存  db是数据库
SESSION_CACHE_ALIAS = 'default'  # 使用的缓存别名

存session :

request.session['name'] ='小明'
request.session['age'] =20
request.session['gender'] =1

取session

name = request.session.get('name')
age= request.session.get('age')
gender= request.session.get('gender')

设置session有效期 :
request.session.set_expiry(value)

如果value是一个整数,session将在value秒没有活动后过期.
如果value为0,那么用户session的Cookie将在用户的浏览器关闭时过期.
如果value为None,那么session有效期将采用系统默认值,为两周.
可以通过setting.py中设置SESSION_COOKIE_AGE来设置全局默认值

删除
 # request.session.clear()  把对应的数据全部删除 保留key
 # request.session.flush()  把key和数据全部 删除
 del request.session['name']  把数据里的指定的key的删除
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 4
    评论
评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值