谷歌翻译的,我修正并且添加了一些内容.凑合看吧.

MariaDB的支持

Django现在正式支持MariaDB 10.1和更高版本。有关更多详细信息,请参见MariaDB注释

ASGI支持

Django 3.0通过提供对作为ASGI应用程序运行的支持,开始了使Django具有完全异步功能的旅程。

注:ASGI是WSGI的扩展,向下兼容WSGI,克服了WSGI的弱点,支持异步并发.有异步并发需求可以重新在生产环境下进行部署.

这是对我们现有的WSGI支持的补充。Django打算在可预见的将来为这两者提供支持。但是,异步功能仅对在ASGI下运行的应用程序可用。

除非您想开始尝试异步代码,否则无需切换应用程序,但是如果您想了解更多信息,我们有 关于使用ASGI进行部署的文档

请注意,作为此更改的副作用,Django现在知道异步事件循环,并将阻止您从异步上下文中调用标记为“async unsafe”的代码(例如ORM操作)。如果您之前使用的是异步代码中的Django,则操作不正确可能会触发它。如果看到SynchronousOnlyOperation错误,请仔细检查代码并将所有数据库操作移至同步子线程中。

PostgreSQL的排斥约束

新增了 ExclusionConstraint类, 允许在PostgreSQL上添加排除约束。使用Meta.constraints选项将约束添加到model 。

Filter 表达式

新增了BooleanField ,可以直接在QuerySet过滤器中使用输出的表达式,而不必首先注释,然后针对注释进行过滤。

在 model field choices中使用枚举

自定义枚举类型TextChoicesIntegerChoicesChoices 现在作为一个的方式来定义Field.choices。为文本和整数字段提供了类型TextChoices 和IntegerChoices类型。在 Choices类允许定义为其他具体的数据类型兼容的枚举。这些自定义枚举类型支持人类可读的标签,可以通过枚举或其成员上的属性来翻译和访问这些标签。有关更多详细信息和示例,请参见枚举类型

次要功能

django.contrib.admin

  • 增加了对admin_order_field的 ModelAdmin.list_display属性的支持。
  • 新增的ModelAdmin.get_inlines()方法允许根据请求或模型实例指定内联。
  • Select2库从4.0.3版本升级到4.0.7。  # Select2 是一个非常好用的下拉框插件,支持很多功能。
  • jQuery从版本3.3.1升级到版本3.4.1。

django.contrib.auth

django.contrib.gis

django.contrib.postgres

django.contrib.sessions

django.contrib.syndication

缓存

文件存储

表格

国际

记录

  • 的新reporter_class参数 AdminEmailHandler允许提供一个 django.views.debug.ExceptionReporter子类,以自定义ADMINSDEBUGis 时发送到站点的回溯文本False

管理命令

  • 新选项允许在搜索要编译的文件时忽略特定目录。compilemessages --ignore.po
  • showmigrations --list现在显示的--verbosity是大于等于2的日期时间 。
  • 在PostgreSQL上,dbshell现在支持客户端TLS证书。
  • inspectdb现在,OneToOneField 当外键具有唯一或主键约束时,它会进行自省。
  • --skip-checks选项将在运行命令之前跳过正在运行的系统检查。
  • 在和 选项现在存放在XZ档案(支持模板,)和LZMA档案(,)。startapp --templatestartproject --template.tar.xz.txz.tar.lzma.tlz

型号

  • 新增哈希数据库功能MD5, SHA1, SHA224, SHA256, SHA384,和 SHA512

  • 添加了Sign数据库功能。

  • 数据库功能的新is_dst 参数 Trunc确定了不存在和不明确的日期时间的处理方式。

  • connection.queries现在显示PostgreSQL上的语句。COPY … TO

  • FilePathField现在接受的可调用对象path

  • 允许使用对称的中间表作为自引用 ManyToManyField

  • name属性CheckConstraint, UniqueConstraint和 Index现在支持应用标签和类插值使用'%(app_label)s''%(class)s'占位符。

  • Field.descriptor_class属性允许模型字段通过覆盖其描述符来自定义get和set行为 。

  • AvgSum现在支持distinct论点。

  • 添加了SmallAutoField,它的行为类似于“ AutoField例外”,只是它只允许某个值(取决于数据库)下的值。从1到的值32767在Django支持的所有数据库中都是安全的。

  • AutoField, BigAutoField以及 SmallAutoField现在从继承 IntegerFieldBigIntegerFieldSmallIntegerField分别。系统检查和验证器现在也已正确继承。

  • FileField.upload_to现在支持pathlib.Path

  • CheckConstraint 现在在MySQL 8.0.16+上受支持。

  • 这种新的allows_group_by_selected_pks_on_model()方法 django.db.backends.base.BaseDatabaseFeatures允许对子句进行优化, 使其仅需要选定模型的主键。默认情况下,仅PostgreSQL上的托管模型支持它。GROUP BY

    要为非托管模型启用仅主键优化,您必须对PostgreSQL数据库引擎进行子类化,并根据需要覆盖features类方法。有关示例,请参见子类化内置数据库后端GROUP BYallows_group_by_selected_pks_on_model()

请求和响应

安全

测试

  • 新的测试Client参数 raise_request_exception允许控制是否应在测试中引发在请求期间引发的异常。该值默认True为向后兼容。如果是,False并且发生异常,则测试客户端将返回500响应,其中包含属性exc_info,一个元组提供发生的异常的信息。
  • 可以使用新选项通过测试名称模式选择要运行的测试和测试用例。test -k
  • assertHTMLEqual()现在,由所使用的HTML比较 将将相同字符引用的文本,字符引用和实体引用视为等效。
  • Django测试运行器现在支持在支持的浏览器上进行硒测试的无头模式。添加--headless选项以启用此模式。
  • Django测试运行器现在支持--start-at--start-after选项,以从特定的顶级模块开始运行测试。
  • Django测试运行器现在支持--pdb在每个错误或失败时生成调试器的选项。

Django 3.0的新功能的更多相关文章

  1. 一张图看懂ANSYS17.0 流体 新功能与改进

    一张图看懂ANSYS17.0 流体 新功能与改进   提交 我的留言 加载中 已留言   一张图看懂ANSYS17.0 流体 新功能与改进 原创2016-02-03ANSYS模拟在线模拟在线 模拟在线 ...

  2. Eviews 8.0&9.0界面新功能介绍

    Eviews 8.0&9.0界面新功能介绍 本文其中一些是自己的整理,也有一些是经管之家论坛中一位热心.好学坛友的整理,其中只是简单介绍一下这两个新版本的部分特性,分享出来,有兴趣的看客可以一 ...

  3. Kafka 0.11新功能介绍:空消费组延迟rebalance

    Kafka 0.11新功能介绍:空消费组延迟rebalance 在0.11之前的版本中,多个consumer实例加入到一个空消费组将导致多次的rebalance,这是由于每个consumer inst ...

  4. Apache Flink 1.9.0版本新功能介绍

    摘要:Apache Flink是一个面向分布式数据流处理和批量数据处理的开源计算平台,它能够基于同一个Flink运行时,提供支持流处理和批处理两种类型应用的功能.目前,Apache Flink 1.9 ...

  5. Xamarin.Form 5.0: 新功能和控件以及调试改进

    上周在.NET Conf 2020,Scott Hunter(.NET),Maddy Leger(微软移动开发工具-Xamarin项目经理)和David Ortinau(首席项目经理,移动开发人员工具 ...

  6. geotrellis使用(二十)geotrellis1.0版本新功能及变化介绍

    目录 前言 变化情况介绍 总结 一.前言        之前版本是0.9或者0.10.1.0.10.2,最近发现更新成为1.0.0-2077839.1.0应该也能称之为正式版了吧.发现其中有很多变化, ...

  7. Eviews 9.0新版本新功能——预测(Auto-ARIMA预测、VAR预测)

    每每以为攀得众山小,可.每每又切实来到起点,大牛们,缓缓脚步来俺笔记葩分享一下吧,please~ --------------------------- 9.预测功能 新增需要方法的预测功能:Auto ...

  8. MyReport报表引擎2.1.0.1新功能

    MyReport报表引擎(免Flex开发集成版)的使用场合适用于以传统html构建的系统,希望集成MyReport报表引擎的报表预览.打印和报表设计功能,而且不须要进行Flex相关的二次开发的用户.M ...

  9. Kafka 2.0 ConsumerGroupCommand新功能

    一直觉得kafka-consumer-groups.sh的输出信息有点少,总算在2.0中得到了改善.新版本ConsumerGroupCommand增加了查看成员信息.组状态信息,算是弥补了之前的不足. ...

随机推荐

  1. Passive Client Feature

    Q. How is the passive client feature used on Wireless LAN Controllers? A. Passive clients are wirele ...

  2. web打开本地文件并读取内容

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  3. 一大波新款iPhone跟安卓厂商抢夺5G市场

    据外媒最新报道称,苹果已经基本完成了今年iPhone的推新阵容,其发布的多款新机中,将涵盖399美元-1149美元的售价区间,特别是5G手机,起步价可能会很亲民,其目的在于进一步占据市场. 今年苹果将 ...

  4. mcast_block_source函数

    #include <errno.h> #include <sys/socket.h> #define SA struct sockaddr int mcast_block_so ...

  5. Android Studio 配置Gradle

    一, 问题:①换个新电脑安装完Android Sutdio第一次打开一个工程巨慢怎么办?② 手动配置Gradle Home为什么总是无效?③ 明明已经下载了Gradle,配置了gradle home, ...

  6. 企业行业分类数据库JSON

    这篇文章主要介绍了 企业信息中选择行业类型,常用在企业注册,入驻填写企业信息等. JSON: [{"id":1001,"name":"IT服务&quo ...

  7. 虚拟机与ubuntu系统的安装与基础操作

    1.虚拟机的下载: 常见的虚拟机软件有:VMware  VirtuaIBOX  Virtual PC  等. 这里主要介绍VMware ,VMware目前已经有很多个版本,可以根据个人情况进行选择.安 ...

  8. AttributeError: 'Word2Vec' object has no attribute 'vocab'

    在 Gensim 1.0.0 版本后移除了 vocab,需使用 model.wv.vocab

  9. vue父孙组件传值($attr及$listeners)的使用

    父组件 <template> <div> <!-- 将值传给子组件 子组件可以获取自己想要的值 也可以忽视掉需要传给孙子组件的值 --> <!-- 同时获取通 ...

  10. cmd常用小命令

    #设置n秒后自动关机 -a取消 shutdown -s -t n #输出内容到fileName里,如果文件不存在将会创建文件,>是替换,>>是追加echo something > ...