【轉】路由對應的名稱以及路由分發

1、引子

  以前咱們學習了,urls 路由映射,上回還說了用正則表達式匹配url,今天咱們就來講說,給路由啓用一個名字,那個這個名字的用途是什麼吶?html

2、路由對應名稱

  2.1 普通名稱前端

    

    

     

  2.2,出入位置參數 對應的路由名稱正則表達式

     

    

 

   

   2.3 傳入關鍵字參數對應的路由名稱django

    

      

 

 

      

3、獲取當前URL

  說明:咱們用request.path_info ,用於 form  action, 這樣當URL 改變以後就無需再去修改 前端的的代碼app

   

  

  

 

  結果學習

    

 

 4、反轉生成URL

  4.一、正常反轉生成URLui

  說明:根據urls中的name反轉生成一個urlurl

    

 

  

5、總結

   一、re_path('^index/',views.index,name='i1'),re_path('^index/(\d+)/(\d+)',views.index,name='i2'),re_path('^index/(?P<nid>\d+)/(?P<uid>\d+)/',views.index,name='i3'),3d

   二、def func(request,*args,**kwargs):orm

      from django.urls import reverse

      url1 = reverse('i1')

      url2 = reverse('i2',args=(1,2,))

      urls = reverse('i3',kwargs={'pid':1,'nid':9})

  三、xxx.html

     {% url  'i1' %} 

     {% url 'i2' 1 2 %}

     {% url 'i3' oid=1 nid=9  %}

  四、第2種和第3種方式,能夠指定到某個頁面中去,可是若是你只須要登陸以後仍是停留在原來的頁面用request.path_info這個功能。

 

6、路由分發

1.在project \ urls  導入 include,

  2.設置轉發到對應的APP,

    

  3.在app 下新建 urls,  設置url 路由

    

  4.訪問的時候,url 變化

    原來:http://127.0.0.1:8000/home/   後來,http://127.0.0.1:8000/cmdb/home/

  

相關文章
相關標籤/搜索