【发布时间】:2020-12-27 15:55:30
【问题描述】:
我已经创建并运行了一个 django 应用程序。我正在尝试添加另一个 html 页面。 我已将关于页面添加到主页应用程序中 enter image description here
这是 home/views.py
from django.shortcuts import render, redirect, reverse
from hobby_product.models import hobby_product
def home(request):
""" Return home page """
#return redirect(reverse('home'))
return render(request, 'home.html')
def not_found(request):
""" Return 404 page not found """
return render(request, '404.html')
def server_error(request):
""" Return 500 internal server error """
return render(request, '500.html')
def about(request):
return render(
request, "about.html"
)
这是 home 中的 url.py:
from django.conf.urls import url, include
from .views import not_found, server_error, home, about
urlpatterns = [
url('/', home, name='home'),
url('not_found/', not_found, name='not_found'),
url('server_error/', server_error, name='server_error'),
url(r'^about$', about, name='about'),
]
这是基础应用的 url.py:
from django.conf.urls import url, include
from django.contrib import admin
from accounts.views import index, logout, login, registration, user_profile
from django.views.generic import RedirectView
from django.views.static import serve
from .settings import MEDIA_ROOT
from accounts import urls as accounts_urls
from about.views import about
from accounts.views import index
from accounts.views import home
from hobby_product import urls as urls_hobby_product
from cart import urls as urls_cart
from home import urls as urls_home
from about import urls as urls_about
from search import urls as urls_search
from checkout import urls as urls_checkout
from django.views import static
from .settings import MEDIA_ROOT
urlpatterns = [
url(r'^admin/', admin.site.urls),
url(r'^$', RedirectView.as_view(url='home/')),
url(r'^media/(?P<path>.*)$', serve, {'document_root': MEDIA_ROOT}),
url(r'^$', index, name="index"),
url(r'^accounts/', include(accounts_urls)),
url(r'^hobby_product/', include(urls_hobby_product)),
url(r'^cart/', include(urls_cart)),
url(r'^about/', include(urls_about)),
url(r'^checkout/', include(urls_checkout)),
url(r'^search/', include(urls_search)),
url(r'^media/(?P<path>.*)$', static.serve, {'document_root': MEDIA_ROOT}),
url(r'^home/', include(urls_home)),
]
最后这就是我在 base.html 中的调用方式
</li>
<li class="nav-item"><a class="nav-link" href="{% url 'about' %}">About</a></li>
<li class="nav-item"><a class="nav-link" href="{% url 'all_hobby_products' %}">Book</a></li>
我收到错误:NoReverseMatch
我试图创建一个“关于”的新应用程序,但我仍然遇到相同的错误。我需要添加一些 html 页面并假设问题出在 url 上,但我看不出哪里有差异。任何想法或帮助将不胜感激!
【问题讨论】:
-
请发布错误回溯
标签: html django django-templates