1. 使用path()函数:
# myapp/urls.py
from django.urls import path
from .views import my_view
urlpatterns = [
# 如果没有提供参数,category将默认为'uncategorized'
path('categories/<str:category>/', my_view, {'category': 'uncategorized'}, name='category_detail'),
]
在这个例子中,<str:category>定义了一个字符串转换器,而{'category': 'uncategorized'}为参数category指定了默认值。
2. 使用re_path()函数:
# myapp/urls.py
from django.urls import re_path
from .views import my_view
urlpatterns = [
# 如果没有提供参数,article_id将默认为1
re_path(r'^articles/(?P<article_id>\d+)/$', my_view, {'article_id': 1}, name='article_detail'),
]
在这个例子中,(?P<article_id>\d+)使用正则表达式匹配一个或多个数字,并通过{'article_id': 1}为参数article_id指定了默认值。
指定默认值的好处是,如果在URL中没有提供相应的参数,Django将使用默认值,这样可以防止因为缺少参数而导致的错误。
转载请注明出处:http://www.zyzy.cn/article/detail/7206/Django