我正在建立我的第一个网站,我被卡住了,因为网站的路径是错误的。 例如: 当我单击导航栏上的“搜索”时,我想转到“/Search”(搜索作为块添加到base.html中)。当我在“/搜索”中并单击导航栏上的“注册”时,我想进入“/注册”(注册也是一个块)。问题是,当我从“/search”中单击“register”时,它会将我指向不存在的“/search/register”。从任何一个页面进入家庭作业
我的网址:
from django.contrib import admin
from django.urls import path, include
from users import views as users_views
from polls import views as polls_views
urlpatterns = [
#path('', include('polls.urls')),
path('', polls_views.home, name='home'),
path('ListSearch/', polls_views.ListSearch, name='ListSearch'),
path('register/', users_views.register, name='register'),
path('admin/', admin.site.urls),
]
我的导航栏:
<nav>
<div class="nav-wrapper" style="background-color:#174c9c;">
<div class="container">
<a href="/" class="brand-logo">ShoppingList</a>
<ul class="right hide-on-med-and-down">
<li><a href="ListSearch">Search for list </a></li>
<li><a href="/">Log in</a></li>
<li><a href="register">Register</a></li>
</ul>
</div>
</div>
</nav>
如果我将上面的“register/”更改为“register”,并对“ListSearch”执行相同的操作,则会得到404: 404 on site: (它查找“register/”但只查找“register/”
在django模板中,必须使用以下命令指定路径:
“路径的名称”是URL.py中给出的名称。 如果URL需要任何参数,则必须指定该参数
我认为你只是错过了你的网址上的斜杠。而不是
使用
(请参见
href
属性中的差异?)您必须添加标记,而不是直接字符串
<li><a href="{% url 'register' %}">Register</a></li>
相关问题 更多 >
编程相关推荐