在模板中使用其url时传递视图参数

2024-05-29 03:03:43 发布

您现在位置:Python中文网/ 问答频道 /正文

在视图.py我有这个:

def logout(request,key):
   auth.logout(request)
   return HttpResponseRedirect(reverse('airAgency.views.index',args=[key])) 

index模板中,当用户单击链接时,注销视图运行:

^{pr2}$

我想把key参数传递给logout视图,假设我有一个名为agn的对象,WebSite field将传递给logout视图,如下所示:

<a href="{% url airAgency.views.logout agn.WebSite %}">

想象一下agn.网站上面的代码mastane的值是否导致此错误:

Caught NoReverseMatch while rendering: Reverse for 'airAgency.views.logout' with arguments '(u'mastane',)' and keyword arguments '{}' not found.

正确的方法是什么?在


Tags: keypyauth视图indexreturnrequestdef
1条回答
网友
1楼 · 发布于 2024-05-29 03:03:43

捕获的NoReverseMatch-通常意味着url被不正确的参数调用,或者当{%url%}尝试调用指定的url时发生了其他错误。在

您需要为要调用的视图函数定义url模式网址.py. 并在url模式中指定一个view函数。在

在网址.py在

url(r'^logout/(?P<key>[a-zA-Z0-9\-]+)/$', "airAgency.views.logout", name="logout"),

在索引.html在

^{pr2}$

如果你只是复制粘贴它,这可能不起作用,因为我不知道确切的项目设置。在

关键是网址.py其中regex用于创建url的外观模式,然后是需要调用的view函数,最后是一个可以在模板中使用的名称。在

这些都在basic Django tutorial中解释。在

相关问题 更多 >

    热门问题