1. 程式人生 > >URL路由系統-命名空間

URL路由系統-命名空間

wrap bottom AR tac response stream 同時 match att

命名空間

1.工程Django下的urs.py

from django.conf.urls import url,include
from django.urls import path,re_path

urlpatterns = [

    path(admin/, admin.site.urls),
    path(cmdb/, include("cmdb.urls",namespace=‘cmdb‘)),  
    path(app/, include("cmdb.urls",namespace=‘app‘)),


]

#兩個ur 127.0.0.1/cmdb/   127.0.0.1/app/  同時指向一個cmdb下的url

2.工程中cmdb下的urls.py

from cmdb import views
appname=‘cmdb‘ #這個appname需要設置 urlpatterns
= [ path(login/, views.login,name="login"), ] #即兩個url 127.0.0.1/cmdb/login 和 127.0.0.1/app/login同時指向 cmdb中views中的login函數

3.cmdb中views.py

from django.shortcuts import HttpResponse,render
from django.urls import reverse

def login(request):    v=reverse(‘cmdb‘:‘login‘) 根據namespace和name反生成url
   print(v)
return HttpResponse(ok)

app01.views.py

1 2 3 def detail(request, pk): print(request.resolver_match) return HttpResponse(pk)

URL路由系統-命名空間