【发布时间】:2016-01-31 16:32:19
【问题描述】:
我是 Django 新手。我已经尝试了很多次教程。我现在已经开始了自己的项目,直到遇到 NoReverseMatch ... 并且找不到关键字参数“{}”。尝试了 0 个模式:[]
我的模板 section_list.html
{% for section in section_name %}
<a href='{% url 'employee_listings' hsection section %}' >
{{ section }}
</br>
{% endfor %}
urls.py
urlpatterns = patterns('',
url(r'^$', views.index, name='index'),
url(r'^letters/(?P<employee_id>\d+)$', views.letters, name='letters'),
url(r'(?P<word>\d+)/$', views.headsection_listings, name='headsection_listings'),
url(r'(?P<hsection>\w+)$', views.section_listings, name='section_listings'),
url(r'(?P<hsection>\w+)/(?P<section>\w+)/$', views.employee_listings, name='employee_listings'),
)
views.py
def employee_listings(request, hsection, section):
#import pdb; pdb.set_trace()
employee_list = Employee.objects.all()
employee_id = [p.emp_id for p in employee_list if p.section.section_name == section]
employee_name = [p.emp_first_name +' ' + p.emp_last_name for p in employee_list if p.section.section_name == section]
# import pdb; pdb.set_trace()
context = {'employee_name':employee_name, 'section':section, 'employee_id':employee_id}
return render(request, 'kapra/employee_list.html', context)
def section_listings(request, hsection):
section_list = Section.objects.all()
# import pdb; pdb.set_trace()
section_name = [p.section_name for p in section_list if p.headsection.head_section_name == hsection]
context = {'section_name':section_name, 'hsection':hsection}
return render(request, 'kapra/section_list.html', context)
浏览器输出: /kapra/Administration 中的 NoReverseMatch
Reverse for 'section_listings' with arguments '(u'Administration', u'Employee Admin')' and keyword arguments '{}' not found. 0 pattern(s) tried: []
.... Reverse for 'section_listings' with arguments '(u'Administration', u'Employee Admin')' and keyword arguments '{}' not found. 0 pattern(s) tried:[]
django_version 1.6.11 如果我不使用 {% url %} 并使用 {/kapra/...} 格式,它就可以工作。
【问题讨论】:
-
section_listing 似乎只有 1 个关键字。
-
对不起,我最初发布了不相关的观点,现在已编辑。视图 section_listings 实际上没有匹配。
-
您正在尝试解决一个不存在的 url。也许试试 {% url 'employee_listings' hsection section %}
-
或者更新您的 section_listing 网址以接收 2 个关键字,而不是 1 个。
-
我很抱歉这个错误。我实际上尝试了 {% url 'employee_listings' hsection section %} 错误是 Reverse for 'employee_listings' 参数 '(u'Administration', u'Employee Admin')' 和关键字参数 '{}' 未找到。尝试了 0 个模式:[]
标签: python django templating