我正在尝试使用django登录视图并在渲染基础模板期间出现NoReverseMatch错误

请帮忙! 我真的被卡住了,我试图使用django登录视图和一次又一次地制作登录页面,我在渲染基本模板时遇到NoReverseMatch错误。

在文档中我读到了有关标签URL的信息,但我不知道如何使用它。

这是我的基本模板

super().get_foo()

这是我的登录模板,扩展了基本模板

<!DOCTYPE html>

<html lang="ru">

<head>
	<meta charset="utf-8" />
	<title></title>
	<meta http-equiv="x-ua-compatible" content="IE=edge" />
	<meta name="viewport" content="width=device-width,initial-scale=1.0" />
	<link rel="shortcut icon" href="favicon.png" />
	<link rel="stylesheet" href="libs/bootstrap/bootstrap-grid-3.3.1.min.css" />
	<link rel="stylesheet" href="libs/font-awesome-4.2.0/css/font-awesome.min.css" />
	<link rel="stylesheet" href="libs/fancybox/jquery.fancybox.css" />
	<link rel="stylesheet" href="libs/owl-carousel/owl.carousel.css" />
	<link rel="stylesheet" href="libs/countdown/jquery.countdown.css" />
	<link rel="stylesheet" href="css/fonts pariszanka.css" />
	<link rel="stylesheet" href="css/media.css" />
</head>
<style>
	*::-webkit-input-placeholder {
	color: #666;
	opacity: 1;
}
*:-moz-placeholder {
	color: #666;
	opacity: 1;
}
*::-moz-placeholder {
	color: #666;
	opacity: 1;
}
*:-ms-input-placeholder {
	color: #666;
	opacity: 1;
}
html {
  	position: relative;
  	min-height: 100%;
}
body {
  	margin-bottom: 60px;
  	background-color: #d7dad9;
}
.header{
	font-family: IsadoraBold;
	text-align: center;
	font-size: 30px;
	}
.top_line{
	background-color: #24292E;
	color: white;
}
.bottom_line{
	background-color: #24292E;
	color: white;
}
.top_name{
	float: left;
	list-style-type: none;
}
.top_nav{
	float: right;
}
.top_nav ul li{
	list-style-type: none;
	display: inline-block;
	vertical-align: center;
	padding-right: 40px;
}
.top_nav a{
	color: white;
}
.top_nav a:hover{
	color: #78B0AE;
}

</style>


<body>
<div class="top_line">
	<div class="container">
		<div class="col-md-12">
			<div class="row">
			 <ul class="hidden-md hidden-lg hidden-xl top_name">
			 	<li><h1>JFE</h1></li>
			 </ul>
				<div class="top_name hidden-sm hidden-xs">
					<h1>Jobs For Everybody</h1>
				</div>
				<div class="top_nav">
					<ul>
						{% if user.is_authenticated %}
						<li><a class="navbar-brand" href="/"><h4>Главная</h4></a></li>
						<li><a class="navbar-brand" href="/notes"><h4>Заметки</h4></a></li>
						<li><a class="navbar-brand" href="/sred_zp"><h4>Рассчет средней З/П</h4></a></li>
						<li><a class="navbar-brand" href="/logout"><h4>{{user.username}}</h4></a></li>
          				{% endif %}
					</ul>
				</div>
			</div>
		</div>
	</div>
</div>

<div class="container">
	<div class="col-md-12">
		{% block content %}{% endblock %}
	</div>
</div>

<div class="navbar-fixed-bottom">
	<div class="bottom_line">
		<div class="container">
			<div class="col-md-12">
				<div class="row">
					<center><h3>Jobs For Everybody</h3></center>
					<center><h4>MartsinovichDanya copyright 2019</h4></center>
				</div>
			</div>
		</div>
	</div>
</div>


	<script src="libs/jquery/jquery-1.11.1.min.js"></script>
	<script src="libs/jquery-mousewheel/jquery.mousewheel.min.js"></script>
	<script src="libs/fancybox/jquery.fancybox.pack.js"></script>
	<script src="libs/waypoints/waypoints-1.6.2.min.js"></script>
	<script src="libs/scrollto/jquery.scrollTo.min.js"></script>
	<script src="libs/owl-carousel/owl.carousel.min.js"></script>
	<script src="libs/countdown/jquery.plugin.js"></script>
	<script src="libs/countdown/jquery.countdown.min.js"></script>
	<script src="libs/countdown/jquery.countdown-ru.js"></script>
	<script src="libs/landing-nav/navigation.js"></script>
	<script src="js/common-pariszanka.js"></script>
	<script src="http://ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
</body>
</html>

这是settings.py的一部分

{% extends "base.html" %}

{% block content %}
    <style>
    .button{
        width: 25%;
    }
    p input{
        border-width: 2px;
	    border-color: gray;
	    border-radius: 30px;
	    padding: 15px 10px;
	    margin-top: 10px;
	    margin-bottom: 10px;
	    background-color: 8F8E89;
	    width: 40%;
	}
	p label{
	    margin-top: 15px;
	}
	form a{
	    font-size: 20px;
	    color: 6E6D68;
    }
    form a:hover{
	    font-size: 20px;
	    color: #78B0AE;
    }
    </style>

    {% url 'login' %}

    {% if form.errors %}
    <p>Your username and password didn't match. Please try again.</p>
    {% endif %}

    {% if next %}
        {% if user.is_authenticated %}
        <p>Your account doesn't have access to this page. To proceed,please login with an account that has access.</p>
        {% else %}
        <p>Please login to see this page.</p>
        {% endif %}
    {% endif %}

    <form method="post" action="{% url django.contrib.auth.views.login %}">
    {% csrf_token %}
    <table>
    <tr>
        <td>{{ form.username.label_tag }}</td>
        <td>{{ form.username }}</td>
    </tr>
    <tr>
        <td>{{ form.password.label_tag }}</td>
        <td>{{ form.password }}</td>
    </tr>
    </table>

    <input type="submit" value="login">
    <input type="hidden" name="next" value="{{ next }}">
    </form>

    {# Assumes you setup the password_reset view in your urlconf #}
    <p><a href="{% url 'password_reset' %}">Lost password?</a></p>

    {% endblock %}

这里是urls.py

    INSTALLED_APPS = [
    'django.contrib.admin','django.contrib.auth','django.contrib.contenttypes','django.contrib.sessions','django.contrib.messages','django.contrib.staticfiles','JobsForEverybody_app','Notes_app',]

MIDDLEWARE = [
    'django.middleware.security.SecurityMiddleware','django.contrib.sessions.middleware.Sessionmiddleware','django.middleware.common.Commonmiddleware','django.middleware.csrf.CsrfViewMiddleware','django.contrib.auth.middleware.Authenticationmiddleware','django.contrib.messages.middleware.MessageMiddleware','django.middleware.clickjacking.XFrameOptionsMiddleware',]

ROOT_urlconf = 'JobsForEverybody.urls'

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates','DIRS': [
            '/home/danya/PycharmProjects/JobsForEverybody-JFE_website/templates'
        ],'APP_DIRS': True,'OPTIONS': {
            'context_processors': [
                'django.template.context_processors.debug','django.template.context_processors.request','django.contrib.auth.context_processors.auth','django.contrib.messages.context_processors.messages',],},]

我正在尝试使用django登录视图并在渲染基础模板期间出现NoReverseMatch错误

yfy332189 回答:我正在尝试使用django登录视图并在渲染基础模板期间出现NoReverseMatch错误

错误是因为您没有在login网址中添加名称。

urls.py中为登录网址模式添加name

urlpatterns = [
    ...
    path('login',auth_views.LoginView.as_view(template_name='login.html'),name='login'),
本文链接:https://www.f2er.com/3162350.html

大家都在问