Django中模板的使用和设置cookie、session

模板的使用
  • 在模板文件内创建子应用的文件夹,每一个子应用的模板使用一个文件夹避免混乱
    在这里插入图片描述
  • 视图代码

class BooksView(View):
    def get(self, request):
    	# 查询出所有图书对象
        books = BookInfo.objects.all()
        # 组成字典key:books     value:为图书对象列表
        dict1 = {
            'books': books
        }
        # render方法返回模板  参1为request,参2为模板路径
        # 参3为jinja2要使用的对象
        ret = render(request, 'book/books.html', dict1)
        return ret
        
  • 模板中使用jinja2语法
  • 循环
    循环li标签 books为数据库查询的所有图书对象,获取图书对象的btitle属性
{% for book in books %}
	<li>{{ book.btitle }}</li>
{% endfor %}

在这里插入图片描述
测试
在这里插入图片描述

设置Cookie

ret为HttpResponse对象
对象的set_cookie方法 参1 为 key 参2 为 value 命名参数max_age为有效时间

ret.set_cookie('name', 'rong', max_age=1000000)
设置Session到redis数据库
  • 要安装一个redis与django交互的包
pip install django-redis
  • 在django项目的settings文件中配置
CACHES = {
    'default': {
        'BACKEND': 'django_redis.cache.RedisCache',
        'LOCATION': 'redis://127.0.0.1:6379/1',
        'OPTIONS': {
            'CLIENT_CLASS': 'django_redis.client.DefaultClient',
        }
    }
}
SESSION_ENGINE = 'django.contrib.sessions.backends.cache'  # 引擎
SESSION_CACHE_ALIAS = 'default'  # 使用的缓存别名
  • key value形式设置session
    request对象.session['key'] = 'value'
request.session['session_name'] = 'rong'
  • 获取session
session_name = request.session['session_name']
  • 删除session
request.session.clear()
  • 删除django所连接的redis数据库
request.session.flush()
  • 删除session内的指定key
del request.session['session_name']
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值