标签:pre 开头 false 名称 pen amp request ons lang
urlpatterns = [
url(r‘^index/‘, views.index),
url(r‘^books/(\d{4})/‘, views.books),#无名分组 (\d{4})
]
def books(request,year):#这里的year对应的就是(\d{4})正则匹配出来的数据
# print(year)
return HttpResponse(year)
位置参数
urlpatterns = [
url(r‘^index/‘, views.index),
url(r‘^books/(\d{4})/(\d[1,2])/‘, views.year_month_books), # 无名分组 匹配年份的
url(r‘^books/(\d{4})/$‘, views.year_books),#无名分组 匹配年份+月份 $符号的作用是防止匹配不到月份,完全匹配的作用
]
视图
def year_books(request, year):
return HttpResponse(year)
def year_month_books(request, year, month):
return HttpResponse(year + month)
#位置参数 第一个参数接收的就是无名分组路径中匹配的第一个分组的数据,第二个参数接收的就是无名分组路径中匹配的第二个分组的数据
url(r‘^books/(?P<year>\d{4})/(?P<month>\d[1,2])/‘, views.year_month_books),
#视图里面的函数形参名称要和url中的分组名对应好,参数位置没有眼球
注意:
APPEND_SLASH=False
配置的意思是最后面加/跟不加/的区别,浏览器默认的是True,如果访问的时候不加/,Django会自动加上斜杠再请求一遍,想等于两边请求.如果这个参数改为False,如果请求的时候不加/,则会报错
所以一般在urls中写的时候一般最后加上/
url(r‘^index/‘, views.index),
def year_month_books(request, year=‘10‘):
return HttpResponse(year)
标签:pre 开头 false 名称 pen amp request ons lang
原文地址:https://www.cnblogs.com/wannengjie/p/13197069.html