URL(路由系統)--->命名空間與reverse

例:

urls.py

        a. '^index/'                  views.index                           
        b. r'^index/(\d+)',           views.index                       
        c. r'^index/(?P<nid>\d+)',    views.index,  {'name':'root'}     
        d. r'^index/(?P<nid>\d+)',    views.index,  {'name':'root'},  name='index'

views.py

c. def index(request, name,nid):
#urls.py可以傳個默認值name
      pass
d. def index(request, name, nid):
#反解URL(拼接成URL)
      reverse('index',kwargs={'nid':1}) ----> /index/1
      {% url 'index' 1 %} ----/index/1

命名空間
#主urls.py
/admin/    include('app01.urls',namespace='m1')
/crm/      include('app01.urls',namespace='m2')
#副mrls.py

app_name='app01'  <<<---------------------------注意!----------------------------
/index/                 name = 'n1'
/xxx/(?P<pk>\d+)/       name = 'n2'

#################
#views.py中
v1 = reverse('m1:n1') -----> /admin/index/
v2 = reverse('m2:n1') -----> /crm/index/
v3 = reverse('m2:n2',kwargs={'pk',1}) ------>/crm/xxx/1/    <-----------注意!-------
#template中
{% url 'm1:n1' %} ---->/admin/index/
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容