网站首页 > 博客文章 正文
Vue3+Django4全新技术实战全栈项目
download:https://www.666xit.com/4154/
Django 4.0 发行说明
这些发行说明涵盖了新功用,以及从 Django 3.2 或更早版别晋级时需求留意的一些向后不兼容的更改。我们已经 开端了一些功用的弃用进程。
假如您要更新现有项目,请参阅怎么将 Django 晋级到更新版别攻略。
Python 兼容性
Django 4.0 支撑 Python 3.8、3.9 和 3.10。我们强烈推荐而且仅官方支撑每个系列的最新版别。
Django 3.2.x 系列是最后一个支撑 Python 3.6 和 3.7 的。
Django 4.0 的新特性
zoneinfo默许时区完成
Python 规范库zoneinfo现在是 Django 中的默许时区完成。
这是从 usingpytz到 using 搬迁的下一步zoneinfo。Django 3.2 答应运用非pytz时区。Django 4.0 是zoneinfo默许完成。支撑pytz现在已弃用,将在 Django 5.0 中删去。
zoneinfo是 Python 3.9 中 Python 规范库的一部分。backports.zoneinfo假如您运用的是 Python 3.8,该 软件包会自动与 Django 一同装置。
转向zoneinfo应该在很大程度上是通明的。当前时区的选择、日期时刻实例到表单和模板中当前时区的转换以及对 UTC 中感知日期时刻的操作不受影响。
可是,假如您运用非 UTC 时区,并运用pytz normalize()和localize()API,可能与TIME_ZONE设置一同运用,您将需求审阅您的代码,由于pytz 和zoneinfo不完全等效。
为了给这样的审计时刻,过渡USE_DEPRECATED_PYTZ 设置答应pytz在 4.x 发布周期中持续运用。此设置将在 Django 5.0 中删去。
此外, 作者创立的pytz_deprecation_shim包zoneinfo可用于帮忙从pytz. 这个包供给了 shims 来协助你安全地移除pytz,而且有一个详细的 搬迁攻略展示了怎么搬迁到新的zoneinfoAPIs。
假如您需求逐渐更新途径,主张运用pytz_deprecation_shim和USE_DEPRECATED_PYTZ过渡设置。
功用仅有束缚
的新*expressions 方位参数 UniqueConstraint()答应在表达式和数据库函数上创立功用仅有束缚。例如:
from django.db import models from django.db.models import UniqueConstraint from django.db.models.functions import LowerclassMyModel(models.Model): first_name = models.CharField(max_length=255) last_name = models.CharField(max_length=255) class Meta: constraints = [ UniqueConstraint( Lower('first_name'), Lower('last_name').desc(), name='first_last_name_unique', ), ]
运用该Meta.constraints选项将功用仅有束缚添加到模型中 。
scrypt暗码哈希
新的scrypt 暗码散列器比 PBKDF2 更安全,推荐运用。可是,它不是默许设置,由于它需求 OpenSSL 1.1+ 和更多内存。
Redis 缓存后端
新的
django.core.cache.backends.redis.RedisCache缓存后端为运用 Redis 进行缓存供给了内置支撑。需求 redis-py 3.0.0 或更高版别。有关更多详细信息,请参阅Django 中运用 Redis 进行缓存的文档。
基于模板的表单烘托
Forms, Formsets , 而且ErrorList现在运用模板引擎呈现以增强自定义。看到新的render(), get_context()以及 template_name用于Form和 表单集烘托了Formset。
次要功用
django.contrib.admin
该admin/base.html模板现在有一个header包含管理站点标题的新块。
新
ModelAdmin.get_formset_kwargs()办法答应自定义传递给表单集结构函数的关键字参数。导航侧边栏现在有一个快速过滤工具栏。
model包含每个模型的模型类的新上下文变量被添加到AdminSite.each_context()办法中。
新
ModelAdmin.search_help_text特点答应为查找框指定描述性文本。该
InlineModelAdmin.verbose_name_plural特点现在回退到
InlineModelAdmin.verbose_name+ 's'。jQuery 从 3.5.1 晋级到 3.6.0。
django.contrib.admindocsP
admindocs 现在答应在ROOT_URLCONF不是字符串的情况下进行艰深的设置。
现在的模型部分admindocs显现缓存的特点。
django.contrib.authP
PBKDF2 暗码哈希的默许迭代次数从 260,000 增加到 320,000。
新的 LoginView.next_page 特点和 get_default_redirect_url()办法答应在登录后自定义重定向。
django.contrib.gisP
添加了对 SpatiaLite 5 的支撑。
GDALRaster 现在答应在任何 GDAL 虚拟文件体系中创立栅格。
新GISModelAdmin类答应自定义用于GeometryField. 这是鼓舞而不是弃用的GeoModelAdminand OSMGeoAdmin。
django.contrib.postgresP
PostgreSQL 后端现在支撑通过服务名称进行衔接。有关更多详细信息,请参阅 PostgreSQL 衔接设置。
新AddConstraintNotValid 操作答应在 PostgreSQL 上创立检查束缚,而无需验证所有现有行是否满意新束缚。
新ValidateConstraint 操作答应验证AddConstraintNotValid在 PostgreSQL 上创立的检查束缚 。
新 ArraySubquery() 表达式答应运用子查询在 PostgreSQL 上结构值列表。
新的trigram_word_similar查找和 TrigramWordDistance()and TrigramWordSimilarity()表达式答应运用三元词类似度。
django.contrib.staticfilesP
ManifestStaticFilesStorage 现在用它们的散列对应物替换 JavaScript 源映射引证的途径。的新manifest_storage参数 ManifestFilesMixinand
ManifestStaticFilesStorage 答应自定义清单文件存储。
缓存
新的异步
APIdjango.core.cache.backends.base.BaseCache开端了使缓存后端异步兼容的进程。新的异步办法都有a前缀名称,例如aadd(), aget(), aset(), aget_or_set(), 或adelete_many().展望未来,a前缀通常用于办法的异步变体。
CSRF
CSRF 保护现在会参阅Origin标头(假如存在)。为此,需求对 设置进行一些更改CSRF_TRUSTED_ORIGINS。
表格
ModelChoiceField现在在为 过错音讯params引发的参数中 包含供给的值。这答应自定义过错音讯运用 占位符。
ValidationErrorinvalid_choice%(value)sBaseFormSet现在运用额外的类呈现非表单过错,nonform以协助将它们与特定于表单的过错区别开来。
BaseFormSet现在答应can_delete通过设置 deletion_widget特点或覆盖get_deletion_widget() 办法来自定义删去表单时运用的小部件 。
国际化
添加了对马来语的支撑和翻译。
通用视图
DeleteView现在运用 FormMixin,答应您供给一个 Form子类,例如一个复选框,以确认删去。此外,这答应DeleteView运用
django.contrib.messages.views.SuccessMessageMixin.根据FormMixin,POST 请求的目标删去是在 中处理的form_valid()。delete()应根据需求将处理程序中的自定义删去逻辑移至form_valid()或同享辅佐办法。
猜你喜欢
- 2025-05-16 网络技术领域端口号备忘录,受益匪浅 !
- 2025-05-16 实现多态必须满足什么条件
- 2025-05-16 新手小白如何用STM32F103C8T6打造自己的开发板
- 2025-05-16 常见的 Ethernet II 报文类型(EtherType)及其对应的 十六进制值
- 2025-05-16 Unicode,GBK和UTF8
- 2025-05-16 阿波罗 STM32F767 开发板资料连载第四十六章 NAND FLASH 实验
- 2025-05-16 基于c51单片机的智能温度控制系统设计与实现(含代码)
- 2025-05-16 基于msp430单片机1602 DS1802温度显示
- 2025-05-16 CPU缓存一致性:从理论到实战
- 2025-05-16 正点原子STM32F4/F7水星开发板资料连载第四十四章NAND FLASH实验
你 发表评论:
欢迎- 368℃用AI Agent治理微服务的复杂性问题|QCon
- 364℃手把手教程「JavaWeb」优雅的SpringMvc+Mybatis整合之路
- 358℃初次使用IntelliJ IDEA新建Maven项目
- 351℃Maven技术方案最全手册(mavena)
- 348℃安利Touch Bar 专属应用,让闲置的Touch Bar活跃起来!
- 347℃InfoQ 2024 年趋势报告:架构篇(infoq+2024+年趋势报告:架构篇分析)
- 345℃IntelliJ IDEA 2018版本和2022版本创建 Maven 项目对比
- 343℃从头搭建 IntelliJ IDEA 环境(intellij idea建包)
- 最近发表
- 标签列表
-
- powershellfor (55)
- messagesource (56)
- aspose.pdf破解版 (56)
- promise.race (63)
- 2019cad序列号和密钥激活码 (62)
- window.performance (66)
- qt删除文件夹 (72)
- mysqlcaching_sha2_password (64)
- ubuntu升级gcc (58)
- nacos启动失败 (64)
- ssh-add (70)
- jwt漏洞 (58)
- macos14下载 (58)
- yarnnode (62)
- abstractqueuedsynchronizer (64)
- source~/.bashrc没有那个文件或目录 (65)
- springboot整合activiti工作流 (70)
- jmeter插件下载 (61)
- 抓包分析 (60)
- idea创建mavenweb项目 (65)
- vue回到顶部 (57)
- qcombobox样式表 (68)
- vue数组concat (56)
- tomcatundertow (58)
- pastemac (61)
本文暂时没有评论,来添加一个吧(●'◡'●)