Django中传入视图的key、group、sort等自定义参数来源是哪里?
参数来源说明
key、group、sort三个参数并非直接由模板传递,它们全部来自Django的URL路由配置(即项目内的urls.py文件),常见的传入场景有两类:
- 路径动态捕获:路由规则中定义了同名的路径占位符,Django会自动从用户请求的URL路径中提取对应值传入视图。
举个配置示例:
当用户访问# urls.py 中的对应配置 urlpatterns = [ path('<int:key>/<slug:group>/<str:sort>/title/', title_views, name='title_view'), ]/1001/activity/latest/title/时,Django会自动解析路径,将key=1001、group=activity、sort=latest三个参数传入title_views函数。 - 路由固定传参:你也可以在路由配置中手动指定固定参数值传入视图,不需要从URL路径捕获:
# urls.py 固定传参示例 urlpatterns = [ path('default/title/', title_views, {'key': 1, 'group': 'all', 'sort': 'hot'}), ]
你提到的模板调用场景,实际是通过{% url %}模板标签生成对应视图的访问链接时,把参数值拼接进最终的URL路径里,最终还是由路由层解析后传递给视图,不存在模板直接调用视图传参的情况。
你可以直接在项目的urls.py文件中搜索title_views对应的路由配置,就能明确这三个参数的具体捕获/赋值规则。
内容的提问来源于stack exchange,提问作者nick_rinaldi
相关产品推荐
相关产品推荐

