在翻阅了几页类似的答案后,我很遗憾地说,我仍然被难住了。我很确定这是urlconf中的一个错误,但是不管是谁,这里有所有相关信息:
应用程序中的URLCONF
urlpatterns = patterns('',
url(r'^$', views.index, name='index'),
url(r'^tenants/$', views.tenant_index, name = 'tenant_index'),
url(r'^(?P<property_alias>[\w\-]+)/$', views.property_detail, name='property_detail'),
url(r'^tenants/(<?P<first>\w+)/(<?P<last>)\w+/$', views.tenant_detail, name = 'tenant_detail'),)
在索引.html在
^{2}$部分视图.py在
def tenant_detail(request, first, last):
tenant = Tenant.objects.filter(first_name__startswith = first,
last_name__startswith = last)
tenant = get_object_or_404(Tenant, pk=tenant[0].pk)
return render(request, 'my_properties/tenants/tenant_detail.html', {'tenant': tenant})
错误本身是:
NoReverseMatch at /properties/tenants/
Reverse for 'tenant_detail' with arguments '()' and keyword arguments '{u'last': u'no', u'first': u'yay'}' not found. 1 pattern(s) tried: ['properties/tenants/(<?P<first>\\[0-9A-Za-z._%+-]+)/(<?P<last>)\\[0-9A-Za-z._%+-]+/$']
Request Method: GET
Request URL: http://127.0.0.1:8000/properties/tenants/
Django Version: 1.6
Exception Type: NoReverseMatch
Exception Value:
Reverse for 'tenant_detail' with arguments '()' and keyword arguments '{u'last': u'no', u'first': u'yay'}' not found. 1 pattern(s) tried: ['properties/tenants/(<?P<first>\\[0-9A-Za-z._%+-]+)/(<?P<last>)\\[0-9A-Za-z._%+-]+/$']
有人知道怎么回事吗?看来我是按照正确的程序来做的
错误在您的regexp中。 'last'组的
\w+
在括号外,命名组语法有一个错误。在这应该行得通:
r'^tenants/(?P<first>\w+)/(?P<last>\w+)/$'
相关问题 更多 >
编程相关推荐