1、contentType组件前端
一、干什么用的?
是一个django内置的一个组件,方便咱们快速的连表操做
二、这两个字段都不会在数据库中生成,他只是用来查询,插入的python
-在course表中: policy = GenericRelation('PricePolicy', object_id_field='course_id', content_type_field='tyble_id') -在价格策略表中: content_obj = GenericForeignKey('table_id', 'course_id')
2、Django的缓存:Django是一个大而全的好东西数据库
一、缓存机制的 优缺点:
优势:把一些常常访问的页面放入缓存当中,请求来了,直接到缓存中拿数据
缺点:缓存的数据不能实时更新
二、Django缓存机制有什么用?django
提升网站的访问效率,有如下几种方式:前端用cdn来作,后台能够用缓存,数据库能够来优化,从三个角度分析,每一个层面可以干什么缓存
三、Django中的6种缓存方式:用的比较常见的有文件缓存和Mecache缓存
(1)开发调试缓存---> 此模式为开发调试使用,实际上不执行任何操做
(2)内存缓存---> 将缓存内容保存至内存区域中
(3)文件缓存---> 把缓存数据存储在文件中
(4)数据库缓存---> 把缓存数据存储在数据库中
(5)Memcache缓存(使用python-memcacheed模块链接memcache)---> Memcache是Django原生支持缓存系统,须要下载Memcached支持库python-Memcached或pylibme
(6)Memcache(使用pylibmc模块)---> 是基于内存的缓存,数据库存储在内存中,
因此若是服务器死机的话,数据就会丢失,因此Memcached通常与其余缓存配合使用
四、Django的基本用法是作什么用?
Django提供了不一样粒度的缓存,能够缓存某个页面,能够只缓存一个页面的某一个部分,甚至能够缓存整个网站,指定将缓存数据保存多久
五、几种缓存机制:服务器
(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 %}