Django 5.0 alpha 1
Django 5.0 首个 alpha 版本已发布,标志着进入功能冻结阶段。
主要变化
- Python 兼容性
Django 5.0 支持 Python 3.10、3.11 和 3.12。开发团队建议用户使用每个 Python 分支的最新版本。
此外,Django 4.2.x 系列是最后一个支持 Python 3.8 和 3.9 的版本。
- 针对表单字段渲染的简化模板
Django 5.0 引入了字段组 (field group) 和字段组模板 (field group templates) 的概念。该特性简化了 Django 表单字段相关元素的渲染,例如标签、小部件、帮助文本和错误等。
例如下面的模板:
<form> ... <div> {{ form.name.label_tag }} {% if form.name.help_text %} <div class="helptext" id="{{ form.name.id_for_label }}_helptext"> {{ form.name.help_text|safe }} </div> {% endif %} {{ form.name.errors }} {{ form.name }} <div class="row"> <div class="col"> {{ form.email.label_tag }} {% if form.email.help_text %} <div class="helptext" id="{{ form.email.id_for_label }}_helptext"> {{ form.email.help_text|safe }} </div> {% endif %} {{ form.email.errors }} {{ form.email }} </div> <div class="col"> {{ form.password.label_tag }} {% if form.password.help_text %} <div class="helptext" id="{{ form.password.id_for_label }}_helptext"> {{ form.password.help_text|safe }} </div> {% endif %} {{ form.password.errors }} {{ form.password }} </div> </div> </div> ... </form>
可简化为:
<form> ... <div> {{ form.name.as_field_group }} <div class="row"> <div class="col">{{ form.email.as_field_group }}</div> <div class="col">{{ form.password.as_field_group }}</div> </div> </div> ... </form>
- 数据库计算的默认值
新的 Field.db_default
参数用于设置数据库计算 (database-computed) 的默认值。例如:
from django.db import models from django.db.models.functions import Now, Pi class MyModel(models.Model): age = models.IntegerField(db_default=18) created = models.DateTimeField(db_default=Now()) circumference = models.FloatField(db_default=2 * Pi())
- 数据库生成的模型字段
新的 GeneratedField
支持创建数据库生成的列。该字段可在所有支持的数据库后端上使用,以创建始终根据其他字段计算的字段。例如:
from django.db import models from django.db.models import F class Square(models.Model): side = models.IntegerField() area = models.GeneratedField(expression=F("side") * F("side"), db_persist=True)

低调大师中文资讯倾力打造互联网数据资讯、行业资源、电子商务、移动互联网、网络营销平台。
持续更新报道IT业界、互联网、市场资讯、驱动更新,是最及时权威的产业资讯及硬件资讯报道平台。
转载内容版权归作者及来源网站所有,本站原创内容转载请注明来源。
- 上一篇
Cmake 3.27.6 发布,开源构建系统
CMake 是一个跨平台的自动化构建系统,它使用一个名为 CMakeLists.txt 的文件来描述构建过程,可以产生标准的构建文件,如 Unix 的 Makefile 或 Windows Visual C++ 的 projects/workspaces 。文件 CMakeLists.txt 需要手工编写,也可以通过编写脚本进行半自动的生成。 CMake 3.27.6 现已发布,一些亮点更新内容如下: Tests/FortranModules:将issue 25112 的修复从 FortranOnly 移出 Tests/FortranModules:为 #25223 添加测试用例 add_custom_target:修复 Fortran sources 的回归 Tests/FortranModules:也测试带有 Fortran sources 的 INTERFACE targets Tests/FortranModules:添加对 iface Fortran sources 的测试 详情可查看发布公告。
- 下一篇
开源项目 WEMQ 加入 Dromara 社区,物联网设备调试系统
项目背景 随着物联网技术的迅猛发展,越来越多的物联网设备被应用于各个行业和领域。物联网设备的调试和管理是确保设备正常运行和提供稳定服务的关键环节。然而,传统的物联网设备调试方案往往存在一些问题,如复杂的配置流程、安全性不足、功能不完善等。 为了解决这些问题,WeMQ应运而生。WeMQ是一款面向物联网设备运营商的开源物联网设备调试系统,旨在提供完整的物联网设备调试方案,并集成了设备管理、MQTT服务器管理、客户管理等功能。该系统采用自研的Nmqs通信层组件,实现了连接信息的加密,保证了数据的安全性。 WeMQ的项目背景源于对物联网设备调试过程中存在问题的深入研究和理解。通过提供开源的解决方案,WeMQ希望为物联网设备运营商提供一个高性能、安全可靠、功能强大的调试和管理平台,帮助他们简化设备调试流程、提高调试效率,并保证设备的稳定运行。 项目的主要特性: 提供一套完整的物联网设备调试方案,包括设备管理、MQTT服务器管理、客户管理等功能,帮助设备运营商简化调试流程。 自研 Nmqs 通信层组件,实现连接信息的加密,确保数据传输的安全性。 提供高性能、稳定可靠的服务,满足大规模物联网设备的调...
相关文章
文章评论
共有0条评论来说两句吧...
文章二维码
点击排行
推荐阅读
最新文章
- CentOS7,CentOS8安装Elasticsearch6.8.6
- Docker使用Oracle官方镜像安装(12C,18C,19C)
- SpringBoot2配置默认Tomcat设置,开启更多高级功能
- Red5直播服务器,属于Java语言的直播服务器
- CentOS7设置SWAP分区,小内存服务器的救世主
- CentOS7安装Docker,走上虚拟化容器引擎之路
- SpringBoot2编写第一个Controller,响应你的http请求并返回结果
- CentOS关闭SELinux安全模块
- Jdk安装(Linux,MacOS,Windows),包含三大操作系统的最全安装
- Linux系统CentOS6、CentOS7手动修改IP地址