找不到/反向的'store'的NoReverseMatch。 “商店”不是有效的视图函数或模式名称

时间:2019-03-09 06:17:16

标签: html django

我正在尝试制作一个简单的主页,该主页将链接到另一个名为store.html的页面。

views.py

from django.shortcuts import render, get_object_or_404, redirect

def home(request):
    return render(request, 'store/home.html')

def store(request):
    return render(request, 'store/store.html')

urls.py

from django.urls import path
from . import views


app_name = 'store'

urlpatterns = [
    path('', views.home, name ='home'),
    path('store/', views.store, name = 'store'),
]

home.html

在这里我放了href="{% url 'home' %}",但发现reverse not match错误,除了其他一切看起来还不错。

{% extends './base.html' %}

{% block content %}
<body>
    <h1>home</h1>
    <a class = 'btn' href="{% url 'store' %}">store</a>

</body>
{% endblock %}

请帮助我如何使用此修复程序来建立链接,以便在单击该链接时将打开另一个页面。我是django的新手,正在使用version 2.1.7

1 个答案:

答案 0 :(得分:0)

根据您的错误提示,存储不是有效的视图函数,因为您已在urls.py中添加了app_name

<body>
    <h1>home</h1>
    <a class = 'btn' href="{% url 'store:store' %}">store</a>
</body>

当您在urlpatterns中提到网址时,网址将始终需要app_name。要了解更多c Django Namespace