Django 4.0 RC1 发布,正式版将于下月推出

栏目: 软件资讯 · 发布时间: 4年前

内容简介:Django 4.0 首个 RC 版本已发布。 发布公告写道,如果未来两周没有发现无法解决的重大错误,正式版将于 12 月 6 日左右推出。若有延迟会通过开发者邮件列表进行通知。 下载地址:https://www.djangoproject.com/d...

Django 4.0 首个 RC 版本已发布。

发布公告写道,如果未来两周没有发现无法解决的重大错误,正式版将于 12 月 6 日左右推出。若有延迟会通过开发者邮件列表进行通知。

下载地址:https://www.djangoproject.com/download/

Django 4.0 主要变化

  • 默认时区实现 zoneinfo
  • 支持 Python 3.8、3.9 和 3.10
  • Django 3.2.x 系列是支持 Python 3.6 和 3.7 的最后版本
  • 引入新密码哈希函数 scrypt,但因为需要更多内存和 OpenSSL 1.1+ 没有默认启用
  • Redis 缓存后端
  • ……

使用zoneinfo作为默认时区实现

Python 标准库zoneinfo现在是 Django 的默认时区实现。其中pytz的支持已弃用,并将在 Django 5.0 中删除。

根据开发团队的介绍,转向zoneinfo后,当前时区的选择、将日期时间实例转换为表单和模板中的当前时区以及对 UTC 中的 aware datetimes 的操作不受影响。

函数式的唯一约束

UniqueConstraint()的新*expressionspositional 参数可以在表达式和数据库函数上创建函数式唯一约束。例如:

from django.db import models
from django.db.models import UniqueConstraint
from django.db.models.functions import Lower


class MyModel(models.Model):
    first_name = models.CharField(max_length=255)
    last_name = models.CharField(max_length=255)

    class Meta:
        indexes = [
            UniqueConstraint(
                Lower('first_name'),
                Lower('last_name').desc(),
                name='first_last_name_unique',
            ),
        ]

增加scrypt密码哈希器

新的scrypt密码哈希器比 PBKDF2 更安全,建议使用。但它不是默认选项,因为它需要 OpenSSL 1.1 以上版本和更多的内存。

Redis 缓存后端

新的django.core.cache.backends.redis.RedisCache缓存后端为使用 Redis 缓存提供了内置支持。此功能需要 redis-py 3.0.0 或更高版本。有关更多详细信息,请查看有关在 Django 中使用 Redis 进行缓存的文档

基于模板的表单渲染

为了提高定制FormsFormsets ErrorList,开发者现在正在使用的模板引擎进行渲染。


以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持 码农网

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

Linux二进制分析

Linux二进制分析

[美]瑞安 奥尼尔 / 棣琦 / 人民邮电出版社 / 2017-12-1 / CNY 59.00

二进制分析属于信息安全业界逆向工程中的一种技术,通过利用可执行的机器代码(二进制)来分析应用程序的控制结构和运行方式,有助于信息安全从业人员更好地分析各种漏洞、病毒以及恶意软件,从而找到相应的解决方案。 本书是一本剖析Linux ELF工作机制的图书,共分为9章,其内容涵盖了Linux环境和相关工具、ELF二进制格式、Linux进程追踪、ELF病毒技术、Linux二进制保护、Linux中的E......一起来看看 《Linux二进制分析》 这本书的介绍吧!

JS 压缩/解压工具
JS 压缩/解压工具

在线压缩/解压 JS 代码

随机密码生成器
随机密码生成器

多种字符组合密码