Python Web框架Django 2.1正式版本周发布啦! 我们来看看有哪些变化和新特性吧。

版权声明:本文系大江狗原创,请勿直接copy应用于你的出版物或任何公众平台。 https://blog.csdn.net/weixin_42134789/article/details/81381611

我们最爱的Python Web框架Django 2.1版本终于在本周发布了。小编就带你抢先看看新版本有哪些新变化吧。随着Django  2.1的发布,Django 2.0版本将不再接受主流技术支持,所有用户建议更新他们的Django版本,以便后续获得bug的修复。

下面我们来看一些Django 2.1版本的新特性吧。

Python版本支持

  • Python 版本要求 3.5, 3.6, 3.7 及以上,不再支持 3.4 版。

数据库版本支持

  • MySQL版本5.6及以上。5.5不再支持

  • PostgreSQL 9.4及以上。9.3不再支持

 

模型权限:新增查看(view)权限

  • 一直以来,Django 模型中只有 增加(Add)、删除(Delete)和编辑(Change) 三个默认的权限,没有单独的查看权限(View)。新的查看权限允许设置某一个模型为可读。- 这个好!这个毛病终于改了,功能更完善了。

  • 向前兼容性:如果用户取得了 修改(Change)权限,自然获得查看权限,无需再额外设置。

管理后台django.contrib.admin

  •  新增ModelAdmin.delete_queryset() 方法和ModelAdmin.get_deleted_objects() 方法

  • 可以覆盖默认的管理后台 - 这个非常好!目前Django后台确实太不美观,以前都是再后台上修修改改,调整样式,现在完全可以自己写后台,把默认后台覆盖掉。

  • 默认的 jQuery 版本从 2.3.3 更新至 3.3.1

登录框架django.contrib.auth

  •  createsuperuser命令可以选择跳过AUTH Password Validators审查

  • 对于订制的User模型,不需要重写UserCreationForm和UserChangeForm

 

新增同站属性(SameSite)

  • setting文件里可以设置SESSION_COOKIE_SAMESITE 和 CSRF_COOKIE_SAMESITE

  • HttpResponse.set_cookie() 支持设置 SameSite 属性,这样跨站请求将不再发送cookie,更加安全 - 这个还不错!

 

其他更新

  • 基于内存的缓存使用 LRU 选择算法

  • 表单ImageField 渲染的控件新增 accept="image/*" 属性,可以指定可以接受的上传图片的格式。- 这个实在是好!!

  • Model模型类支持 __init_subclass__ 重写

  • BooleanField 允许设置 null=True ,NullBooleanField 类可能在未来版本被移除

官方新闻链接

  • https://www.djangoproject.com/weblog/2018/aug/01/django-21-released/

  • https://docs.djangoproject.com/en/2.1/releases/2.1/

猜你喜欢

转载自blog.csdn.net/weixin_42134789/article/details/81381611