django python3 异步_支持异步的Django 3.X来了,你准备好了吗? Django 3.0新特色与变化详解。...

Django在本月10日发布了Django 3.0 alpha版本,标志着Django 3.X时代的来临。作为Django的忠粉们,你们准备好了吗? 尽管Django 3.0的最终正式版还没有发布,我们一起来抢先看看新版本里会有哪些激动人心的变化吧?

Python兼容性

Django 3.0 将支持 Python 3.6、3.7 与 3.8。Django 2.2.x 会是最后一个支持 Python 3.5 版本的系列。对于第三方Django应用,官方建议应用开发作者放弃对 Django 2.2 之前版本的支持。

数据库的支持

Django 3.0将放弃对PostgreSQL 9.4和Oracle 12.1 的支持。不过Django 3.0将支持使用MariaDB 10.1或更高版本的数据库。开发者将多了一种数据库的选择。

新增对ASGI的支持,Django的异步时代来了

Django 3.0 开始将新增对 ASGI的支持,让 Django 逐渐支持异步功能。这是Django对现有WSGI 模式支持的补充。Django打算在可预见的将来同时支持ASGI和WSGI这两种工作模式,但是异步功能仅对在 ASGI 下运行的应用程序可用。除非你要开始试用异步代码,否则无需切换应用程序。

新增PostgreSQL的排除约束

新的ExclusionConstraint 类可以在 PostgreSQL 上添加排除约束;约束可以通过Meta.constraints 选项添加。

BooleanField的过滤表达

Django 3.0版本中输出的带BooleanField 的表达式现在可以直接在 QuerySet 过滤器中使用,而无需先注解然后对注解进行过滤。

新增TextChoices和IntegerChoices类

新增枚举类型 TextChoices和IntegerChoices 类。Django 3.0中你不仅可以通过元组自定义Choices选项,还可以使用类的继承自定义选项。比如下例通过类的继承自定义了Vehicle的选项。

>>> class Vehicle(models.TextChoices):

... CAR = 'C'

... TRUCK = 'T'

其它小变化新增 get_user_permissions()方法,模仿现有的 get_group_permissions() 方法

Required fields将支持多对多字段。

Cookie和session部分新增 get_session_cookie_age()方法

Formsets将支持排序,通过can_order属性设定。

正式版发布时间?

Django 3.0正式版将于2019年12月发布。同时官方还给出了Django 3.1版预计发布时间: Oct 2020。

小编的话

Django更新的稍微有点勤,都快跟不上节奏了。刚用Django的时候还是1.0.X版的,眨眼间Django 3.0都要来了。不过话又说回来,这说明开发者一直努力维护着Django,让其变得更好。这难道不是好事一件吗? 喜欢Django的同志们别忘了加关注或收藏哦。

最后提前祝大家国庆快乐!!

大江狗

2019.9.29

推荐阅读

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值