Django 网址 - 模板问题 {% url '' %}
Django Urls - Template Issue {% url '' %}
当我开始使用 Django 时,我使用的是 1.11,然后升级到 2.0。我的 URLs 工作正常,没有任何问题,我想有些东西已经更新了,但我一直在查看文档,但我看不出问题出在哪里。据我所见,我在模板中的 URL 是正确的,即使我也尝试过 '' 并且仍然遇到同样的问题。
NoReverseMatch at /admin/dashboard
Reverse for '' not found. '' is not a valid view function or pattern name.
Request Method: GET
Request URL: http://127.0.0.1:8000/admin/dashboard
Django Version: 2.2.6
Exception Type: NoReverseMatch
Exception Value:
Reverse for '' not found. '' is not a valid view function or pattern name.
Exception Location: /home/bridgetsarah/.local/lib/python3.5/site-packages/django/urls/resolvers.py in _reverse_with_prefix, line 673
Python Executable: /usr/bin/python3
Python Version: 3.5.2
Python Path:
['/home/bridgetsarah/voyage/bridgetsarah',
'/usr/lib/python35.zip',
'/usr/lib/python3.5',
'/usr/lib/python3.5/plat-x86_64-linux-gnu',
'/usr/lib/python3.5/lib-dynload',
'/home/bridgetsarah/.local/lib/python3.5/site-packages',
'/usr/local/lib/python3.5/dist-packages',
'/usr/lib/python3/dist-packages']
Server time: Fri, 25 Oct 2019 19:26:43 +0000
<ul>
24 <li> <i class="fas fa-tachometer-alt"></i> <a href="#"> Dashboard </a> </li>
25 <li><i class="fas fa-tasks"></i> <a href='#'> Projects </a> </li>
26 <li><i class="fas fa-users"></i> <a href="{% url client %}"> Clients </a> </li>
27 <li><i class="fas fa-server"></i><a href='#'> Servers </a> </li>
28 </ul>
29
from django.urls import include, path , re_path
from django.conf.urls import include, url
from . import views
from django.contrib.auth.views import LoginView
from voyage.views import login_invalid, dashboard, client
app_name = 'voyage'
urlpatterns = [
# Clients---------------------------------- #
path('admin/client', views.client, name='client'),]
def client(request):
return render(request, 'admin/client/client.html', context)
接下来我可以尝试什么?
应该是 {% url "client" %}
- 名称必须用引号引起来。
请注意,这在 Django 1.5(2012 年)中已经发生了变化;这在 1.11 版本中绝对行不通。
当我开始使用 Django 时,我使用的是 1.11,然后升级到 2.0。我的 URLs 工作正常,没有任何问题,我想有些东西已经更新了,但我一直在查看文档,但我看不出问题出在哪里。据我所见,我在模板中的 URL 是正确的,即使我也尝试过 '' 并且仍然遇到同样的问题。
NoReverseMatch at /admin/dashboard
Reverse for '' not found. '' is not a valid view function or pattern name.
Request Method: GET
Request URL: http://127.0.0.1:8000/admin/dashboard
Django Version: 2.2.6
Exception Type: NoReverseMatch
Exception Value:
Reverse for '' not found. '' is not a valid view function or pattern name.
Exception Location: /home/bridgetsarah/.local/lib/python3.5/site-packages/django/urls/resolvers.py in _reverse_with_prefix, line 673
Python Executable: /usr/bin/python3
Python Version: 3.5.2
Python Path:
['/home/bridgetsarah/voyage/bridgetsarah',
'/usr/lib/python35.zip',
'/usr/lib/python3.5',
'/usr/lib/python3.5/plat-x86_64-linux-gnu',
'/usr/lib/python3.5/lib-dynload',
'/home/bridgetsarah/.local/lib/python3.5/site-packages',
'/usr/local/lib/python3.5/dist-packages',
'/usr/lib/python3/dist-packages']
Server time: Fri, 25 Oct 2019 19:26:43 +0000
<ul>
24 <li> <i class="fas fa-tachometer-alt"></i> <a href="#"> Dashboard </a> </li>
25 <li><i class="fas fa-tasks"></i> <a href='#'> Projects </a> </li>
26 <li><i class="fas fa-users"></i> <a href="{% url client %}"> Clients </a> </li>
27 <li><i class="fas fa-server"></i><a href='#'> Servers </a> </li>
28 </ul>
29
from django.urls import include, path , re_path
from django.conf.urls import include, url
from . import views
from django.contrib.auth.views import LoginView
from voyage.views import login_invalid, dashboard, client
app_name = 'voyage'
urlpatterns = [
# Clients---------------------------------- #
path('admin/client', views.client, name='client'),]
def client(request):
return render(request, 'admin/client/client.html', context)
接下来我可以尝试什么?
应该是 {% url "client" %}
- 名称必须用引号引起来。
请注意,这在 Django 1.5(2012 年)中已经发生了变化;这在 1.11 版本中绝对行不通。