Django框架路由的无名分组
![](https://img2022.cnblogs.com/blog/1413093/202207/1413093-20220705195701378-2096893815.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
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)
re_path('^article/(\d{4})/\d{1,2}$', articleByMonth), # articleByMonth(request,2012,12)
path('admin/', admin.site.urls),
path('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-20220705195723300-1727494037.png)
from django.shortcuts import HttpResponse,render,redirect
import datetime
import requests
def get_ncov(request):
res = requests.get("https://2019ncov.chinacdc.cn/JKZX/yq_20220401.json")
#print(res.json)
data = res.json()["features"]
return render(request,"ncov.html"),{"data":data}
def article(request,year):
# "select * from article where year = 2012"
return HttpResponse("article文章列表" + year)
def articleByMonth(request,year,month):
# "select * from article where year = 2012"
return HttpResponse(f"{year}年{month}月articleByMonth文章列表")