在 URL 中使用占位符(使用 angle brackets <>),然后将值作为视图函数的参数传递。例如:
path('articles/<int:article_id>/', views.article_detail, name='article_detail')
在这个例子中,<int:article_id> 会匹配 URL 中的一个整数(必须为正整数或 0),并将其传递给视图函数 article_detail
的 article_id
参数。
基于查询参数的传递
在 URL 中使用问号(?)和键值对的形式来传递参数,例如:
path('search/', views.search_results, name='search_results')
在视图函数 search_results
中获取查询参数的值:
def search_results(request):
query = request.GET.get('q')
其中,request.GET
是一个类似 Python 字典的对象,包含所有查询参数及其值。上述代码中的 query
将对应查询参数 q
的值。
无论使用哪种方式,都需要在应用的 urls.py
文件中进行定义。定义 URL 规则时,需要使用路径匹配函数(如 path()
)或正则表达式匹配函数(如 re_path()
)来匹配 URL,然后将匹配到的 URL 映射到相应的视图函数上去。