Django框架路由的include分发机制
![](https://img2022.cnblogs.com/blog/1413093/202207/1413093-20220705210004112-2124907913.png)
"""mysite URL Configuration
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/3.2/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path,re_path,include
from views.py import get_ncov,article,articleByMonth,get_timer,test
urlpatterns = [
#urls路由控制器
path('article/2012', article),
re_path('article/\d+', article),
re_path('^article/\d+$', article),
re_path('^article/\d{4}$', article),
#无名分组
# /article/2012
re_path('^article/(\d{4})$', article), # article(request,2012)
# /article/2012/12
re_path('^article/(\d{4})/\d{1,2}$', articleByMonth), # articleByMonth(request,2012,12)
#有名分组
re_path('^article/(?P<year>\d{4})/(?P<month>\d{1,2}$', articleByMonth), # articleByMonth(request,year=2012,month=12)
#路由的include分发机制
path('app01/', include('app01.urls')),
#path('app01/admin/', admin.site.urls),
#path('app01/timer/', get_timer),
#path('app01/test/', test),
#path('app01/2019ncov/', get_ncov),
'''
re.findall('article/\d+',"article/2011abc")
re.findall('article/\d+',"abc/article/2011abc")
re.findall('article/\d+',"abc/article/abc/2011abc")
'''
]
![](https://img2022.cnblogs.com/blog/1413093/202207/1413093-20220705210219134-934712610.png)
"""mysite URL Configuration
The `urlpatterns` list routes URLs to views. For more information please see:
https://docs.djangoproject.com/en/3.2/topics/http/urls/
Examples:
Function views
1. Add an import: from my_app import views
2. Add a URL to urlpatterns: path('', views.home, name='home')
Class-based views
1. Add an import: from other_app.views import Home
2. Add a URL to urlpatterns: path('', Home.as_view(), name='home')
Including another URLconf
1. Import the include() function: from django.urls import include, path
2. Add a URL to urlpatterns: path('blog/', include('blog.urls'))
"""
from django.contrib import admin
from django.urls import path,re_path
from views.py import get_ncov,article,articleByMonth,get_timer,test
urlpatterns = [
path('admin/', admin.site.urls),
path('timer/', get_timer),
path('test/', test),
path('2019ncov/', get_ncov),
]