简介:本文的首席执行官Note将向您介绍哪个版本的Django很受欢迎。我希望这对每个人都会有所帮助。让我们来看看。
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是超大版本更新。除上述更新外,它还包含一些放弃的功能以及未准备好的更新项目。完整版更新内容可以在更新公告中查看。
Python2.7和Python3都支持Django。鉴于Python2.7限制已经到了,建议使用Python3
差异不大。几个功能已经改变。url()在Django1和django2中使用,并且在API文档中清楚地说明了未来版本不建议使用。他还有一个名为re_path().path()的别名是django3中使用的函数,它是url()的替代方法。
Django是一个具有开源代码的Web应用程序框架,由Python编写。MTV框架模式,模型M,视图V和模板T. IT最初是为管理Lawrence Publisting Group拥有的一些网站而开发的,这主要是新闻内容,即CMS(内容管理系统)软件。它于2005年7月在BSD许可下发布。此框架以比利时吉普车吉他手Django Reinhardt.ON命名,2019年12月2日,Django 3.0发布
希望采用 -
如果MySQL数据表是错误的,则可以将其返回到2.0版Django版本
Django 2.1功能
Python版本支持
Python版本需要3.5+,不再支持3.4。
模型权限:添加的视图(视图)权限
长期以来,Django模型只有三个默认权限:增加(添加),删除(删除)和编辑器(更改),并且没有单独的查看权限。新的查看权限允许设置模型可读取。
正向兼容性:如果用户获得修改(更改)权限,则自然会在没有任何其他设置的情况下获得查看权限。
登录框架
删除了contry.auth.views模块下的所有函数视图(FBV),并且可以使用相应的类视图(CBV)
安全
httpresponse.set_cookie()支持设置samesite属性
不再支持数据
不再支持MySQL 5.5及以下,PostgreSQL 9.3及以下
其他更新
默认的jQuery版本从2.3.3更新为3.3.1
根据基于内存的缓存使用LRU选择算法
ImageField渲染控制新访问=“ image/*”属性
模型类支持init_subclass重写
booleanfield允许设置null = true,将来可以删除nullbooleanfield类
这个差异很大。最好使用/学习最新版本。许多旧模块在新版本中不可用或采用。有关详细信息,请参阅Django的官方网站
结论:以上是首席CTO注释为所有人编写的Django的所有流行内容。感谢您花时间阅读此网站。我希望这对您有帮助。有关此网站上哪个版本Django的更多相关内容。