简介:今天,首席CTO Note将与您分享Django如何使用与缓存相关的内容。如果您可以添加您现在面临的问题,请不要忘记注意此网站。让我们现在开始!
有很多方法可以实现缓存,本地内存缓存,数据库缓存和文件系统缓存。在这里是将REDIS数据库用于缓存的简介。
环境
Redis
django-redis
配置
settings.py
caches = {“ default”:{“ back”:“ django_redis.cache.cache.rediscache”,“ local”:“ redis://127.0.0.0.1:6379/1”,“ options”,“ options”:{“ client_classs”::“:”django_redis。“ client.defaultclient”,“密码”:“ mySecret”
}
}
}
python manage.py createCachetable1
缓存具有站点缓存和单个视图缓存
站点缓存:
settings.py
中间件= [#M M CACHE,请注意您必须处于第一个位置
'django.middleware.cache.updatecachemiddleware',
...#... ... ...,请注意,您必须处于最后一个位置
'django.middleware.cache.cache.fetchfromcachemiddle”,
这是给予的
查看缓存:
Views.py
要求):
bar = foo.objects.all()返回渲染(请求,'cache/index.html',{'bar':bar':bar})
1. django_redis
1. Django-Redis基于BSD许可证。这是一个功能齐全的组件,使Django能够支持REDIS缓存/会话。
2. Django-Redis自己的优势:
●连续更新
●局部redis-py URL符号连接字符串
●扩展客户
●可扩展的解析器
●可扩展的序列化器
●默认客户所有者/支持
●完美测试
●在某些项目的生产环境中,将其用作缓存和会话
●没有时间安装时间
●本地输入REDIS客户/连接池支持
●高配置(例如,模拟缓存的异常行为)
●默认支持UNIX插座
●支持Python 2.7、3.4、3.5和3.6
3.推荐版本
第四,django_redis基本使用操作:
5. Django项目中的配置格式
6.定制的Redis工具类
七个,自定义redis密钥协议
8.查看通话缓存
Django 4.0已正式发布,版本4.0支持Python 3.8、3.9和3.10。随着Django 4.0的发布,Django 3.2的主流支持已结束。该版本主要具有以下亮点:
重要更新
Zoneinfo作为默认时区
Django 3.2允许使用非-Pytz时区。DJANGO4.0是ZoneInfo作为默认时区:废弃的Pytz,并在Django 5.0.zoneinfo中删除它是Python 3.9标准库的一部分。如果您使用的是Python 3.8,则将自动安装ZoneInfo软件包。
请注意,如果您在非UTC(世界标准时间)时区域中,并且您使用的是PYTZ normalize()和localalalize()API,则可以设置time_zone,并且需要查看代码4。Thex系列版本具有过渡使用_DEPRECCATED_PYTZ设置,可以缓慢地从PYTZ过渡到ZoneInfo。此设置将在Django 5.0中删除。
此外,ZoneInfo作者创建的PYTZ_DEPRECATION_SHIM软件包用于帮助从PYTZ迁移。该软件包提供了安全删除PYTZ的垫片,并提供了详细的迁移指南,以显示如何使用PYTZ_DEPRECATION_SHIM和use_deprecccced_pytz设置新Zoneinfo API。
功能的独特约束
UniqueConstraint()的新 *表达式位置参数可以在表达式和数据库函数上创建功能性唯一约束。例如:
使用meta.constraints选项将唯一约束添加到模型中。
添加Scrypt密码哈希设备
新的Scrypt密码哈希比PBKDF2更安全,建议使用它。但是它不是默认选项,因为它需要OpenSSL 1.1或更多版本或更多版本和更多内存。
REDIS缓存后端
新的django.core.cache.backends.redis.rediscache Cache提供了构建的 - 支持使用redis Cache。此功能需要Redis -py 3.0.0或更高版本。
基于模板的形式渲染
使用模板引擎呈现表单,例如render(),get_context()和template_name for for表单。
次要更新项目:
django.contrib.admin
django.contrib.auth
django.contrib.gis
django.contrib.postgres
django.contrib.staticfiles
缓存
新的异步API:django.core.cache.backends.base.basecache开始使缓存的后端变成短期兼容性。新的异步方法具有前缀的名称,例如AADD(),AGET(),ASET(),ASET(),ASET(),ASET(),ASET(),ASET(),ASET(),ASET(),ASET()(),aget_or_set()或adelete_many()。
将来,通常将前缀用于该方法的异步变体。
CSRF
全球化
普遍观点
Deleteview现在使用FormMixin允许您提供表单子类,例如带有确认删除的复选框。
日志
管理命令
模块
请求和响应
信号
模板
测试 ?
Django 4.0是超大版本更新。除上述更新外,它还包含一些放弃的功能以及未准备好的更新项目。完整版更新内容可以在更新公告中查看。
结论:以上是首席CTO汇编的Django相关内容的摘要,请注意Django如何使用CACHE相关内容。希望它对您有所帮助!如果您解决了问题,请与更多关心此问题的朋友分享?