Django 31 发布异步支持增强

2020-08-10 08:10 Python开发者

(给Python开发者加星标,提升Python技能

来源: 开源中国

Django 3.1 已经发布。此版本亮点包括:

  • 进一步支持异步视图与异步中间件。

要开始使用异步视图,需要声明一个视图 :async def

async def my_view(request):
await asyncio.sleep(0.5)
return HttpResponse('Hello, async world!')
无论是在 WSGI 还是 ASGI 模式下运行,都支持所有异步功能。但是,在 WSGI 模式下使用异步代码会导致性能下降。Django 的 ORM、缓存层和其它长时间运行网络调用的代码尚不支持异步访问。
  • 新增 models.JSONField 和 forms.JSONField,可在所有受支持的数据库后端上使用。这两个字段都支持使用自定义 JSON 编码器和解码器。
from django.db import models

class ContactInfo(models.Model):
data = models.JSONField()

ContactInfo.objects.create(data={
'name': 'John',
'cities': ['London', 'Cambridge'],
'pets': {'dogs': ['Rufus', 'Meg']},
})
ContactInfo.objects.filter(
data__name='John',
data__pets__has_key='dogs',
data__cities__contains='London',
).delete()

  • tokens、cookies、sessions 和 signatures 现在使用 SHA-256 哈希算法。
详情查看发布公告:
https://www.djangoproject.com/weblog/2020/aug/04/django-31-released



- EOF -



推荐阅读  点击标题可跳转

1、简约而不简单的 Django 新手图文教程

2、Django 3.0 将支持异步功能

3、简约而不简单的 Django 新手图文教程


觉得本文对你有帮助?请分享给更多人

关注「Python开发者」加星标,提升Python技能

好文章,我在看❤️

本文章转载自公众号:PythonCoder

首页 - Python 相关的更多文章: