【发布时间】:2017-09-28 01:41:21
【问题描述】:
我正在尝试从 url 传递参数。我已经尝试了很多教程,但无法弄清楚我做错了什么。 我来自 url.py 的网址:
url(r'^reports/(?P<test>\d+)/$', views.reports,name='reports'), # report view
view.py 中我的观点:
def reports(request, test=0 ):
title = "Reports" # title shown in browser window
view ="admin/pc/reports.html"# where is the page view
user_name = request.user.get_username() #User name
return render(request, 'admin/home.html', {"title":title,"USER_NAME" : user_name,"page" : view, 'pid':test})
还有我的模板:
{% block content %}
REPORTSz id = {{pid }}
{% endblock %}
但无论我做什么,我总是得到:
带有参数“()”和关键字参数“{}”的“报告”反向 未找到。尝试了 1 种模式:['admin/reports/(?P\d+)/$']
所以我的问题是如何正确地从 url 传递参数?
【问题讨论】:
-
哪一行会产生这个错误?看起来您正在使用
reverse()函数并且没有传递必需的参数 (test) -
它说:在模板 ...\templates\admin\home.html 中,第 0 行出现错误,我的导航链接如下所示:
- 报告
,据我所知,它应该去报告 test=0
标签: python django django-urls