Python 找不到NoReverseMatch模式
很难弄清楚为什么我一直在获取Python 找不到NoReverseMatch模式,python,django,Python,Django,很难弄清楚为什么我一直在获取NoReverseMatch app/url.py from django.conf.urls import url, patterns from . import views urlpatterns = patterns('', url(r'^$', views.IndexView.as_view(), name='index'), url(r'^(?P<contact_id>\d+)/detail/$', views.details
NoReverseMatch
app/url.py
from django.conf.urls import url, patterns
from . import views
urlpatterns = patterns('',
url(r'^$', views.IndexView.as_view(), name='index'),
url(r'^(?P<contact_id>\d+)/detail/$', views.details, name='details'),
)
from django.core.urlresolvers import reverse
from django.shortcuts import render, get_object_or_404
from django.http import HttpResponse, HttpResponseRedirect
from django.http import Http404
from django.views import generic
from django.template import RequestContext, loader
from .models import Person
# Create your views here.
class IndexView(generic.ListView):
template_name = 'ContactManager/index.html'
context_object_name = 'contact_list'
def get_queryset(self):
return Person.objects.order_by('lname')
def details(request, contact_id):
contact = get_object_or_404(Person, id=contact_id)
return render(request, 'ContactManager/details.html', {'contact': contact})
# class DetailView(generic.ListView):
# model = Person
# context_object_name = 'contact'
# template_name = 'ContactManager/details.html'
#
# def get_queryset(self):
#
模板索引.html
{% if contact_list %}
<ul>
{% for contact in contact_list %}
<li>
<a href="{% url 'contact:details' contact_id=contact.id %}"> {{ contact.fname }} {{ contact.lname }}</a>
</li>
{% endfor %}
</ul>
{% else %}
<p>You don't have any contacts currently.</p>
{% endif %}
{%if contact_list%}
{联系人列表%中联系人的百分比}
-
{%endfor%}
{%else%}
您当前没有任何联系人
{%endif%}
我得到的错误是:
Reverse for 'details' with arguments '()' and keyword arguments '{'contact_id': 1}' not found. 1 pattern(s) tried: ['$(?P<contact_id>\\d+)/detail/$']
找不到参数为“()”且关键字参数为“{'contact_id':1}”的“details”的反转。已尝试1个模式:['$(?P\\d+)/detail/$']
我在{%url…%}
任何帮助都将不胜感激 我认为详细url模式有一个错误,在错误消息中出现一个尝试过的模式,以
$
符号开始和结束:
已尝试1个模式:['$(?p\d+)/detail/$']
检查您的图案是否等于:
^(?P<contact_id>\\d+)/detail/$
删除前缀模式末尾的$
符号:
url('^', include(ContactManager.urls, namespace='contact'))
我认为details url模式有一个错误,在错误消息中出现一个尝试过的模式,以
$
符号开始和结束:
已尝试1个模式:['$(?p\d+)/detail/$']
检查您的图案是否等于:
^(?P<contact_id>\\d+)/detail/$
删除前缀模式末尾的$
符号:
url('^', include(ContactManager.urls, namespace='contact'))
我认为details url模式有一个错误,在错误消息中出现一个尝试过的模式,以
$
符号开始和结束:
已尝试1个模式:['$(?p\d+)/detail/$']
检查您的图案是否等于:
^(?P<contact_id>\\d+)/detail/$
删除前缀模式末尾的$
符号:
url('^', include(ContactManager.urls, namespace='contact'))
我认为details url模式有一个错误,在错误消息中出现一个尝试过的模式,以
$
符号开始和结束:
已尝试1个模式:['$(?p\d+)/detail/$']
检查您的图案是否等于:
^(?P<contact_id>\\d+)/detail/$
删除前缀模式末尾的$
符号:
url('^', include(ContactManager.urls, namespace='contact'))
请注意,如果未在
urlpatterns
中定义name
,也可能出现此错误
像这样做
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^error_containing_view/$', views.error_containing_view, name='error_containing_view'),
]
在应用程序的URL.py中,将修复此错误。请注意,如果未在
urlpatterns
中定义名称,也可能出现此错误
像这样做
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^error_containing_view/$', views.error_containing_view, name='error_containing_view'),
]
在应用程序的URL.py中,将修复此错误。请注意,如果未在urlpatterns
中定义名称,也可能出现此错误
像这样做
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^error_containing_view/$', views.error_containing_view, name='error_containing_view'),
]
在应用程序的URL.py中,将修复此错误。请注意,如果未在urlpatterns
中定义名称,也可能出现此错误
像这样做
urlpatterns = [
url(r'^$', views.index, name='index'),
url(r'^error_containing_view/$', views.error_containing_view, name='error_containing_view'),
]
在你的应用程序的URL.py中会修复错误。是的,这是一个输入错误,应该是views.py。谢谢您指出。您是否在mainurl.py
中添加了namespace='contacts
?是的,这是一个输入错误,应该是views.py。谢谢您指出。您是否在mainurl.py
中添加了namespace='contacts
?是的,这是一个输入错误,应该是views.py。谢谢您指出。您是否在mainurl.py
中添加了namespace='contacts
?是的,这是一个输入错误,应该是views.py。谢谢您指出。您是否在mainurl.py
中添加了namespace='contacts
?是的,就是这样。我把项目/url.py中的url弄乱了,我有:url(r'^$,include('ContactManager.url',namespace='contact')),而不是正确的方式:url(r'^',include('ContactManager.url',namespace='contact')),谢谢你的帮助!是的,就是这样。我把项目/url.py中的url弄乱了,我有:url(r'^$,include('ContactManager.url',namespace='contact')),而不是正确的方式:url(r'^',include('ContactManager.url',namespace='contact')),谢谢你的帮助!是的,就是这样。我把项目/url.py中的url弄乱了,我有:url(r'^$,include('ContactManager.url',namespace='contact')),而不是正确的方式:url(r'^',include('ContactManager.url',namespace='contact')),谢谢你的帮助!是的,就是这样。我把项目/url.py中的url弄乱了,我有:url(r'^$,include('ContactManager.url',namespace='contact')),而不是正确的方式:url(r'^',include('ContactManager.url',namespace='contact')),谢谢你的帮助!