首页 > 解决方案 > 变量在哪里传递到 Django 中的视图中?

问题描述

我在 Django 视图中重构代码。我正在使用具有以下参数的视图:

def title_views(request, key, group, sort):
    group = get_object_or_404(Group, group=group, main_id = key)
    default_sort = sort

我知道默认情况下每个视图都应该有request参数。但是在 方面key, group, sort,我可以期望这些项目在哪里通过?是通过模板调用视图吗?我来这里寻求帮助是因为文档对此并不那么清楚,至少在我的经验中是这样。

谢谢!

标签: djangoview

解决方案


这些是 URL 参数。链接到此视图的 URL 可能如下所示:

    path('<str:key>/<str:group>/<str:sort>/', title_views)

或使用正则表达式,例如:

    re_path(r'(?P<key>\w+)/(?P<title>\w+)/(?P<sort>\w+)/')

如果您因此访问一个类似的页面,它将在路径上进行模式匹配,从而使用for 、for和for调用该函数。foo/bar/qux/'foo'key'bar'title'qux'sort

因此,通常 URL 参数包含确定如何过滤、排序和呈现内容的数据。


推荐阅读