如何使用从views.py发送的变量将几个参数传递给url模板标签

Posted

技术标签:

【中文标题】如何使用从views.py发送的变量将几个参数传递给url模板标签【英文标题】:How to pass several arguments to the url template tag with variable sent from views.py 【发布时间】:2013-08-06 06:12:57 【问题描述】:

这似乎很容易,但它根本不起作用。

我希望有人能找到诀窍!

无论如何,在 django 文档中,有一个脚本可以用于一个参数,但不能用于多个参数:

<a href="% url 'news.views.year_archive' 2012 %">2012 Archive</a>
# Or with the year in a template context variable: #
<ul>
% for yearvar in year_list %
<li><a href="% url 'news.views.year_archive' yearvar %"> yearvar  Archive</a></li>
% endfor %
</ul>

对我来说:

<a href="% url 'home.views.something' var1 var2 %">var1 var2 Something</a>

不起作用。有什么想法吗?

【问题讨论】:

我们在这里讨论的是 URL 还是模板标签? 这一切都取决于 home.views.something 的 url 模式是什么样的。所以发布你的urls.py 你能把你的观点贴在这里吗? 对不起,我忘记发送变量了,它有效! 这个问题似乎离题了,因为它太本地化了 【参考方案1】:

显示你的 urls.py

如果要推送多个参数,Django 必须通过 urls.py 知道如何处理它们。

url(r'^(?P<obj_pk>[\d]+)/(?P<user_pk>[\d]+)/$', ....

在这些我们可以推送一些对象主键和用户 pk,或其他东西。

【讨论】:

以上是关于如何使用从views.py发送的变量将几个参数传递给url模板标签的主要内容,如果未能解决你的问题,请参考以下文章

将变量从视图传递到表单 Django

将一个变量(一个标志)从 urls.py 传递给 django 中的 views.py

如何将参数“请求”从脚本传递给视图的函数? [关闭]

Django如何通过单击带有变量的提交按钮从ajax调用views.py中的函数

django:将 url 作为参数传递

如何从views.py 中获取值并在html 模板中使用它?