我知道我可以在模板文件中包含此代码,该代码将返回链接列表
{% for q in all %}
<ul>
<li><a href={% url 'detail' q.id %}>{{ q.question_text }}</a></li>
</ul>
{% endfor %}
现在django将在我的应用目录的'detail'
文件中搜索名称urls.py
,并将自动为该参数提供q.id
的值。但是,如果我的网址包含多个变量,该怎么办?因此,在这里我只能给出一个参数,即q.id
。但是,如果我想提出多个论点怎么办。
希望我清楚
答案 0 :(得分:2)
好吧,您可以看到urls.py
是URL映射视图功能(和基于类的视图)的声明。网址可以具有任意数量的参数。
例如,如果我们具有以下URL:
url(r'^detail/(?P<year>(\d+))/(?P<name>(\w+))/$', views.detail),
我们可以将此网址视为某种虚函数,其参数如下:
def some_url(year, name):
# ...
pass
因此我们可以使用未命名参数
构造此URL。{% url 'detail' 1981 q.name %}
或带有 named 参数的
{% url 'detail' name=q.name year=1981 %}