Python中Django 2.0 发布了,有哪些新特性和升级注意事项?

https://docs.djangoproject.com/en/stable/releases/2.0/


顺便问一句,国内好像没有成气候的 Django 社区?类似 Ruby China 那样
Python中Django 2.0 发布了,有哪些新特性和升级注意事项?

26 回复

有的。django-china


Django 2.0主要新特性包括:

  1. 简化URL路由:用path()converters替代复杂的正则,写起来更直观。
  2. 移动端友好的Admin:后台管理界面适配了移动端。
  3. MySQL支持:现在支持MySQL 5.7+,包括原生JSONField。
  4. 性能提升QuerySetiterator()方法现在用服务器端游标,内存占用更少。

升级时注意:

  • Python版本:必须用Python 3.4+,2.7不再支持。
  • URL语法:如果还用url(),建议换成path()re_path()
  • 自定义MIDDLEWAREMIDDLEWARE_CLASSES设置已废弃,统一用MIDDLEWARE
  • on_delete必填:所有ForeignKeyOneToOneField必须显式设置on_delete参数。

建议先跑一遍测试,用python -Wa manage.py test把弃用警告全揪出来。

谢谢,去看了一眼,原来域名改成了 python88。。。不如 django-china

怎么跟 v2 这么像。。

v2 是用 Python 写的

不知道,参考了呗

用 flask

以前用过几年.django 感觉越来越臃肿啊

django 细节处理的真好

热烈庆祝~~

Mobile-friendly contrib.admin¶

The admin is now responsive and supports all major mobile devices. Older browsers may experience varying levels of graceful degradation.

好评,admin 支持手机了~

已经用上 2.0 了,还是挺好的,过渡难度小

抛弃掉 py2,起码代码能少很多行

终于砍掉 py2 支持

一站式提供这么多功能,相对臃肿是必然的。

django2 都出来了啊,1.8 我还没用上呢

吓得我赶紧下载了个 python3

如果 Django 能把模块也做成 Plugin 机制的是不是会好很多。

毕竟 Template 已经很少用了。

很多时候也只想用它的 ORM。

你可以在 installed_apps 中删除相关的应用吧?

流行 Python Web 开发框架 Django 释出了 ( https://docs.djangoproject.com/en/2.0/releases/2.0/) 2.0 版本。主要变化包括:停止支持 Python 2 系列,Django 1.11.x 是支持 Python 2.7 的最后版本,Django 2.0 支持 Python 3.4、3.5 和 3.6,其中 Python 3.4 将于 2019 年 3 月结束支持,因此 Django 2.0 也将是最后一个支持 Python 3.4 的版本。开发者还建议第三方库开发者停止支持 1.11 之前的版本。Django 2.0 的主要新特性包括:简化 URL 路由语法,移动友好的 contrib.admin,等等

http://www.solidot.org/story?sid=54720

django-1.11.8.zip
django-2.0.zip

2.0 的体积比 1.x 的体积还要大, 按理说抛弃了 py2,体积应该会缩小呀

这是怎么会是

新的 Feature,需要新的应用。而且兼容应该是其它的 package 来实现的,只是去掉一部分代码,可能不如新增的代码多。

那只是没有用它,不代表是没有安装啊

我真的赶紧下载了 python3

回到顶部