我的观点如下:
def selectCity(request, the_city):
request.session["ciudad"] = the_city
city = request.session["ciudad"]
return HttpResponse('Ciudad has been set' + ": " + city)
一个看起来像这样的网址:
url(r'^set/$', views.selectCity, {'the_city': 'gye'}, name='ciudad'),
现在当我访问/设置/我从url {'the_city':'gye'}中的dict上的值设置会话变量时得到适当的响应
现在,我想要做的是修改我的程序,以便我可以从另一个模板(index.html)调用'ciudad'网址并设置相应的会话变量。 因此,我会使用反向URL匹配来调用它,并使用其他参数执行此类操作:
<div class="modal-body">
<a tabindex="-1" href="{% url ciudad 'the_city':'uio' %}">Quito</a>
<br/>
<a tabindex="-1" href="{% url ciudad 'the_city':'gye' %}">Guayaquil</a>
</div>
我试图以各种方式修改url和视图以及反向url调用以尝试使其工作但是,我似乎无法弄明白。 我真的很感激一些指示。
答案 0 :(得分:11)
如果您的网址(在urls.py
中)有任何捕获组,您可以在url标记中传递相关参数。
url(r'^set/(?P<the_city>\w+)/$', views.selectCity, {'the_city': 'gye'}, name='ciudad'),
然后在模板中:
<a tabindex="-1" href="{% url ciudad the_city='gye' %}">Guayaquil</a>
答案 1 :(得分:1)
结帐captured parameters。这样的事情可能有用:
url(r'^set/$', views.selectCity, {'the_city': 'gye'}, name='ciudad'),
url(r'^set/(?P<the_city>\w+)/$', views.selectCity, name='ciudad'),