I got an error,NoReverseMatch at /app/index. I wrote in views.py
def index(request):
return render(request, 'index.html')
def test1(request):
return render(request, 'test1.html')
def test2(request):
return render(request, 'test2.html')
in urls.py
app_name = "app"
urlpatterns = [
path('index', views.index,name='index'),
path('test1', views.test1,name='test1'),
path('test2', views.test2,name='test2'),
]
in index.html
<tr>
<td align="center ">
<a class="test1" href="{% url 'test1' %} ">test1</a>
</td>
<td align="center ">
<a class="test2" href="{% url 'test2' %} ">test2</a>
</td>
</tr>
When I access index method, NoReverseMatch at /app/index Reverse for 'test1' not found. 'test1' is not a valid view function or pattern name. error happens. I rewrote
<a class="test1" href="{% url 'app:test1' %} ">test1</a>
but same error happens. I really cannot understand why I got this error.I already test1&test2 url.How should I fix this? Traceback says Traceback (most recent call last):
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/core/handlers/exception.py", line 35, in inner
response = get_response(request)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/core/handlers/base.py", line 128, in _get_response
response = self.process_exception_by_middleware(e, request)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/core/handlers/base.py", line 126, in _get_response
response = wrmymyapped_callback(request, *callback_args, **callback_kwargs)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/contrib/auth/decorators.py", line 21, in _wrmymyapped_view
return view_func(request, *args, **kwargs)
File "/Users/xxx/Downloads/mymyapp/myapp/views.py", line 166, in kenshinresults
return render(request, 'index.html')
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/shortcuts.py", line 36, in render
content = loader.render_to_string(template_name, context, request, using=using)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/template/loader.py", line 62, in render_to_string
return template.render(context, request)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/template/backends/django.py", line 61, in render
return self.template.render(context)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/template/base.py", line 175, in render
return self._render(context)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/template/base.py", line 167, in _render
return self.nodelist.render(context)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/template/base.py", line 943, in render
bit = node.render_annotated(context)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/template/base.py", line 910, in render_annotated
return self.render(context)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/template/defaulttags.py", line 447, in render
url = reverse(view_name, args=args, kwargs=kwargs, current_mymyapp=current_mymyapp)
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/urls/base.py", line 88, in reverse
return iri_to_uri(resolver._reverse_with_prefix(view, prefix, *args, **kwargs))
File "/Users/xxx/anaconda/envs/py36/lib/python3.6/site-packages/django/urls/resolvers.py", line 632, in _reverse_with_prefix
raise NoReverseMatch(msg)
My base url is
from django.conf import settings
from django.conf.urls import include, url
from django.conf.urls.static import static
from django.contrib import admin
from django.contrib.staticfiles.urls import staticfiles_urlpatterns
urlpatterns = [
url('admin/', admin.site.urls),
url('app/', include('app.urls')),
]