django 2.0更新的10條注意事項總結(jié)
前言
備受期待的django 2.0已經(jīng)發(fā)布了,最大的一個變化就是不再支持python2.x版本了,這也為我們還在保守使用的2.x的同學(xué)們敲響了警鐘,趕緊學(xué)習(xí)python3.x吧,雖然大同小異,但是python3.x還是提供了很多更高級的用法。
Python兼容性
Django 2.0支持Python3.4、3.5和3.6。Django官方強(qiáng)烈推薦每個系列的最新版本。
最重要的是Django 2.0不再支持Python2!
Django 1.11.x是支持Python2.7的最后版本。
django2.0 棄用的特性
下面這些是我在升級到Django 2.0后遇到的最常見的一些錯誤:
1. url
from django.core.urlresolvers import reverse
變成了
from django.urls import reverse
2. MIDDLEWARE
settings.py文件,MIDDLEWARE_CLASSES更改成了MIDDLEWARE,這個一定要注意。
3. django.shortcuts.render()
django.shortcuts.render_to_response()方法已經(jīng)被棄用了,現(xiàn)在使用django.shortcuts.render()方法。
4. User.is_authenticated 和User.is_anonymous
之前的User.is_authenticated()和User.is_anonymous()方法更改成了屬性:User.is_authenticated和User.is_anonymous。
5. SessionAuthenticationMiddleware
刪除了SessionAuthenticationMiddleware類,不再需要該中間件,在Django 1.10+中已經(jīng)默認(rèn)開啟了。
6. assignment_tag 改成simple_tag
@register.assignment_tag改成了@register.simple_tag。
django2.0 更新的特性
下面的是更新到Django 2.0遇到的一些新特性
7. on_delete=models.CASCADE
為model的ForeignKey和OneToOne的屬性增加on_delete=models.CASCADE。
8. URL編寫進(jìn)行了簡化
Django以前的URL規(guī)則是正則規(guī)則,寫起來是有點反人類的,一點都不Pythonic。開發(fā)者們一直在被迫寫類似這樣的匹配表達(dá)式:
url(r'^articles/(?P<year>[0-9]{4})/$', views.year_archive),
現(xiàn)在,你可以這樣寫了:
path('articles/<int:year>/', views.year_archive),
9. 聚合操作
數(shù)據(jù)庫查詢的聚合操作annotate中,增加了一個叫Window的操作,和一個叫Frame的條件。
10. 首頁
除此之外,首次啟動的歡迎頁面也重做了,感覺高大上了很多,有沒有 django2-index
總結(jié)
有關(guān)Django 2.0的新功能和更改的完整列表,請參閱官方文檔。
好了,以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
解決pycharm運(yùn)行出錯,代碼正確結(jié)果不顯示的問題
今天小編就為大家分享一篇解決pycharm運(yùn)行出錯,代碼正確結(jié)果不顯示的問題,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-11-11
淺談pycharm導(dǎo)入pandas包遇到的問題及解決
這篇文章主要介紹了淺談pycharm導(dǎo)入pandas包遇到的問題及解決方式,具有很好的參考價值,希望對大家有所幫助。一起跟隨小編過來看看吧2020-06-06
使用scipy.optimize的fsolve,root函數(shù)求解非線性方程問題
這篇文章主要介紹了使用scipy.optimize的fsolve,root函數(shù)求解非線性方程問題,具有很好的參考價值,希望對大家有所幫助。如有錯誤或未考慮完全的地方,望不吝賜教2022-12-12
Python實現(xiàn)大數(shù)據(jù)收集至excel的思路詳解
這篇文章主要介紹了Python實現(xiàn)大數(shù)據(jù)收集至excel的思路,本文通過完整代碼給大家介紹的非常詳細(xì),具有一定的參考借鑒價值,需要的朋友可以參考下2020-01-01

