settings中的配置
CACHES = {
'default': {
'BACKEND': 'django.core.cache.backends.filebased.FileBasedCache', # 指定缓存使用的引擎
'LOCATION': 'path', # 指定缓存的路径
'TIMEOUT': 300, # 缓存超时时间(默认为300秒,None表示永不过期)
'OPTIONS': {
'MAX_ENTRIES': 300, # 最大缓存记录的数量(默认300)
'CULL_FREQUENCY': 3, # 缓存到达最大个数之后,剔除缓存个数的比例,即:1/CULL_FREQUENCY(默认3)
}
}
}
按照缓存粒度不同分类
单页面缓存
在视图函数上加一个装饰器
from django.views.decorators.cache import cache_page
@cache_page(5) 5 代表缓存时间
def testpage():
pass
局部缓存
# 模板文件中这样使用
{% load cache %}
{% cache 5 'test'%} 第一个参数表示缓存时间,第二个参数是key值(取缓存的时候,需要根据key值取)
当前时间:{{ time }}
{% endcache %}
全站缓存
#settings文件夹中的位置
'django.middleware.cache.UpdateCacheMiddleware', 'django.middleware.cache.FetchFromCacheMiddleware'
视图函数中使用缓存
# view.py
cache.set('test_data',{'name':'龙妈','age':18},5)
cache.get('test_data')
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Django中使用缓存 - Python技术站