• Django day31 contentType组件,Django的缓存


    一、contentType组件

      1、干什么用的?
        是一个django内置的一个组件,方便我们快速的连表操作
      2、这两个字段都不会在数据库中生成,他只是用来查询,插入的

    -在course表中:
        policy = GenericRelation('PricePolicy', object_id_field='course_id', content_type_field='tyble_id')
    -在价格策略表中:
        content_obj = GenericForeignKey('table_id', 'course_id')

    二、Django的缓存:Django是一个大而全的好东西

      1、缓存机制的 优缺点:
        优点:把一些经常访问的页面放入缓存当中,请求来了,直接到缓存中拿数据
        缺点:缓存的数据不能实时更新
      2、Django缓存机制有什么用?

        提高网站的访问效率,有以下几种方式:前端用cdn来做,后台可以用缓存,数据库可以来优化,从三个角度分析,每个层面能够干什么

      3、Django中的6种缓存方式:用的比较常见的有文件缓存和Mecache缓存
      (1)开发调试缓存---> 此模式为开发调试使用,实际上不执行任何操作
      (2)内存缓存---> 将缓存内容保存至内存区域中
      (3)文件缓存---> 把缓存数据存储在文件中
      (4)数据库缓存---> 把缓存数据存储在数据库中
      (5)Memcache缓存(使用python-memcacheed模块连接memcache)---> Memcache是Django原生支持缓存系统,需要下载Memcached支持库python-Memcached或pylibme
      (6)Memcache(使用pylibmc模块)---> 是基于内存的缓存,数据库存储在内存中,
    所以如果服务器死机的话,数据就会丢失,所以Memcached一般与其他缓存配合使用

      4、Django的基本用法是做什么用?
        Django提供了不同粒度的缓存,可以缓存某个页面,可以只缓存一个页面的某一个部分,甚至可以缓存整个网站,指定将缓存数据保存多久
      5、几种缓存机制:

      (1)全站缓存:两个中间件

    MIDDLEWARE_CLASSES = (
        ‘django.middleware.cache.UpdateCacheMiddleware’, #第一
        'django.middleware.common.CommonMiddleware',
        ‘django.middleware.cache.FetchFromCacheMiddleware’, #最后
        )

      (2)单页面缓存:

    from django.views.decorators.cache import cache_page
    # 装饰器加载视图函数上即可
    @cache_page(5)

      (3)页面局部缓存:

    {% load cache %}
    # 第一个参数是时间,第二个参数是别名
    {% cache 5 'test' %}
    缓存的时间:
    {{ ctime }}
    {% endcache %}
  • 相关阅读:
    学习Py——自己模拟写的一个Range功能
    心情随笔20180529
    记一次排查局网内的ARP包 “不存在的” MAC 地址及 “不存在的”IP 所发的ARP包
    最长反链
    浅谈矩阵树定理
    毒瘤dp 学校食堂
    P3565 由简单的树形dp 引入 长链刨分
    noi 2017 整数
    记人生的抉择
    2019 HL SC day10
  • 原文地址:https://www.cnblogs.com/zedong/p/10191609.html
Copyright © 2020-2023  润新知