django 中的反向解析
阿新 • • 發佈:2019-02-17
django反向解析的優點:
如果在檢視,模板中使用硬編碼連線,在url配置發生改變時,需要變更的程式碼會非常多,這樣導致我們的程式碼結構不是很容易維護,使用反向解析可以提高我們程式碼的擴充套件性和可維護性。
django中反向解析的使用包含:
1)在根url中使用namespace,path('views/', include('mainapp.urls',namespace='view'))
2)在app的urls上使用name,url('^hello/(\d+)',views.hello,name='sayhello'),這裡需要注意:urls.py檔案中必須宣告app_name
3)在html中使用,{% url 'namespace:name' %}
如:{% url 'view:sayhello' %},如果存在引數傳值:
1)關鍵字傳值,在後面新增 key=value,多個引數使用空格隔開,如:{% url 'view:sayhello' name='hehe' page=5 %}
2)位置引數,在後面直接新增引數值,多個引數用空格隔開,如:{% url 'view:sayhello' 'hehe' 5 %}
4)view函式中,def sayhello(request,name,page)
總體的舉例:
在python 中的使用