为什么Dango在尝试用Hyperlink打开新页面时显示此错误

问题描述 投票:-3回答:1

URLS.PY

from django.contrib import admin
from django.urls import path
from . import views

urlpatterns = [
    path('admin/', admin.site.urls),
    path('', views.homepage, name='homepage'),
    path('login', views.login, name='login'),
]

VIEWS.PY

from django.http import HttpResponse
from django.shortcuts import render


def homepage(request):
    return render(request, 'bms_homepage_template/bms_homepage.html')

def login(request):
    return render(request, 'bms_homepage_template/login_page.html')

login_page.html

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <title>Login Page</title>
</head>
<body>
    <h1>LOGIN INTO YOUR ACCOUNT</h1>

    <form action="">
        Account Number:
        <input type="text"> <br>
        Password:
        <input type="text"> <br>
        <input type="submit" value="submit">

    </form>
</body>
</html>

bms_homepage.html

<a href="login_page.html"><button id="login">LOGIN</button></a>

我想做的是来自homepage.html,当我单击登录按钮时,它应该打开login_page.html。但它向我显示此错误。

找不到页面

请简单说一下。

django django-views django-templates
1个回答
0
投票

您应该引用网址格式名称,而不是模板名称。

在您的情况下,URL模式名称为login

urlpatterns = [
    ..
    path('login', views.login, name='login'), <<<--- "name" argument value
]

要引用此模式,您应该使用url-reversion模板标记,如下所示:

<a href="{% url 'login' %}">...</a>
© www.soinside.com 2019 - 2024. All rights reserved.