django 中url與path小記


1. 在django 2.0中增加了一些新的特性

  • 更簡單的URL路由語法 (Simplified URL routing syntax)
  • admin應用的針對移動設備的優化改進(Mobile-friendly contrib.admin)
  • 支持SQL開窗表達式(Window expressions)

第一個特性,主要用於動態路由定義上。在Django2.0代碼實現中,主要的變化是新增了 django.urls.path 函數,它允許使用一種更加簡潔、可讀的路由語法。比如之前的版本的代碼:
在django中url和path的區別

url(r'^articles/(?P<year>[0-9]{4})/$', views.year_archive),

 2. Django中 url和path都是配置路徑,有什么區別?

django.urls path
django.conf.urls url

 path 與url 是兩個不同的模塊,效果都是響應返回頁面,path 調用的是python 第三方模塊或者框架,而url是自定義的模塊,如views 下的def 函數對應url的參數值

值得注意的是,在版本1.x中使用url,在版本2.x中使用path

所以在很多教程中新手需要注意
3. Import變動
django.urls.path 可以看成是 django.conf.urls.url 的增強形式。

4.小結
第一,目前 路由(url)到視圖(View)的流程可以概括為四個步驟:

  1. url匹配
  2. 正則捕獲
  3. 變量類型轉化
  4. 視圖調用

Django2.0 和之前相比多了 變量類型轉化 這一步驟
第二,新的path語法可以解決一下以下幾個場景:

  1. 類型自動轉化
  2. 公用正則表達式

tips

還有待補充

參考

參考鏈接1


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM