Vor kurzem schrieb ich eine App namens Notebook, und ich stieß auf diese NoReverseMatch Problem. Ich hoffe wirklich, jemand könnte mir helfen. Hier sind meine Codes. in views.py:So lösen Sie NoReverseMatch in django1.8.6
def note_add(request):
if request.method == 'POST':
form = NoteForm()
category = CategoryForm()
if form.is_valid() and category.is_valid():
data1 = form.cleaned_data
data2 = category.cleaned_data
category_name = data2['category_name']
for category_list in category_name.split():
Category.objects.get_or_create(category_name=category_list.strip())
title = data1['title']
content = data1['content']
note = Note(title=title, content=content)
note.save()
id = Note.objects.order_by('-id')[0].id
return HttpResponseRedirect('/notebook/note_add/%s' % id)
else:
form = NoteForm()
category = CategoryForm()
return render_to_response('notebook/note_add.html',{'form':form, 'category':category})
in Notebook/urls.py:
from django.conf.urls import url
from . import views
urlpatterns = [
url(r'^$', views.note_list, name='note_list'),
url(r'^/note_add/$,', views.note_add, name='note_add'),
url(r'^(?P<id>[0-9]+)/$', views.note_detail, name='note_detail'),
url(r'^edit/(?P<id>[0-9]+)/$', views.edit, name='edit'),
url(r'^category/(?P<id>[0-9]+)/$', views.note_category, name='note_category'),
]
Die Problembeschreibung ist
NoReverseMatch at /notebook/
Reverse for 'note_add' with arguments '()' and keyword arguments '{}' not found. 1 pattern(s) tried: ['notebook//note_add/$,']
Welche URL haben Sie es erwarten – Sayse
anzupassen Entfernen Sie das führende/'url (r '^ Note_add/$,', Ansichten .note_add, name = 'note_add') ' –
Dieser Fehler kommt nicht von diesem Code, weil Sie nicht' reverse' oder das Template '{% url%}' Tag verwenden. –