首页 > 解决方案 > 单击href Django时如何不附加/ home /

问题描述

如果我在一个网页上myapp.com/home,我在顶部有一个导航栏,它通向delete_confirm.html. 这是在我的home.html页面中,其中包含链接

<li class="nav-item dropdown">
  <a class="nav-link dropdown-toggle" href="#" id="navbarDropdown" role="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
    User Settings
  </a>
  <div class="dropdown-menu" aria-labelledby="navbarDropdown">
    <a class="dropdown-item" href="{% url 'delete_confirm_view' %)">Delete Account</a>
  </div>
</li>

这是我的urls.py

urlpatterns = [
    path('home/', home_view, name='home'),
    path('admin/', admin.site.urls, name='admin'),
    path('delete/', delete_user, name='delete'),
    url(r'^signup/$', views.signup, name='signup'),
    path('paste_list/', paste_list_view, name='paste_list'),
    url(r'^$', home_view),
    path('<str:custom_uuid>/edit', edit_view, name='edit_paste'),
    path('<str:custom_uuid>/', detail_view, name='detail'),
    path('accounts/', include('django.contrib.auth.urls')),
    path('delete_confirm_view/', delete_confirm_view, name="delete_confirm_view" )
]

以及相关部分views.py

@login_required
def delete_confirm_view(request):
    return render(request, "delete_confirm_view.html", {})

我得到的错误是:The current path, home/{% url 'delete_confirm_view' %), didn't match any of these.我想知道如何不能包含/home附加到正在检查的 URL 的部分。或者,我如何正确转发到所需的页面。

标签: django

解决方案


in your <project>/urls.py

from django.urls import path, include, re_path # url renamed as re_path in django2.0
from <your_app> import urls

urlpatterns = [
    path('', include("your_app.urls")), # probably, you are using `home` prefix here.
    path('admin/', admin.site.urls),
]

推荐阅读