欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  IT编程

django url映射的时候指定默认参数

程序员文章站 2022-06-22 12:23:36
使用path或者re_path后,在url中都可以包含参数,而有时候想指定默认的参数,可以通过在urls.py中写两个url都指向同一个视图函数。一个带参数一个不带参数。同时,在视同函数的参数中设置默认值。这样,当匹配到不带参数的url时,就会使用默认值。实例代码: urls.py 1 from d ......

使用path或者re_path后,在url中都可以包含参数,而有时候想指定默认的参数,可以通过在urls.py中写两个url都指向同一个视图函数。一个带参数一个不带参数。同时,在视同函数的参数中设置默认值。
这样,当匹配到不带参数的url时,就会使用默认值。
实例代码:

urls.py

1 from django.urls import path, re_path
2 from app01 import views
3 
4 urlpatterns = [
5     path('book/',views.book,name='book'),
6     path('book/<int:num>/',views.book,name='book')
7     ]

views.py

1 from django.shortcuts import httpresponse
2 book_list = ['青龙', '白虎', '月牙']
3 def book(request,num=0):
4     return httpresponse(book_list[num])

 


当访问:http://127.0.0.1:8000/book/时显示:青龙;
当访问:http://127.0.0.1:8000/book/1/时显示:白虎;
当访问:http://127.0.0.1:8000/book/2/时显示:月牙;