Django 2.0 - 不是有效的视图函数或模式名称(自定义 Auth 视图) [英] Django 2.0 - Not a valid view function or pattern name (Customizing Auth views)
本文介绍了Django 2.0 - 不是有效的视图函数或模式名称(自定义 Auth 视图)的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我正在做一个课程练习,我被困了几个小时,我不确定是什么导致应用程序崩溃,接下来,你会找到相关的文件,也许你可以找到解决方案.感谢您的帮助!
登录时抛出此错误:
内部服务器错误:/account/login/...django.urls.exceptions.NoReverseMatch:未找到仪表板"的反转.仪表板"不是有效的视图函数或模式名称.[04/Apr/2018 17:12:15] "POST/account/login/HTTP/1.1" 500 151978
在 settings.py 文件的末尾
from django.urls import reverse_lazyLOGIN_REDIRECT_URL = reverse_lazy('仪表板')LOGIN_URL = reverse_lazy('登录')LOGOUT_REDIRECT_URL = reverse_lazy('退出')
urls.py 文件
from django.contrib.auth 将视图导入为 auth_views从 django.urls 导入路径从 .导入视图app_name = '账户'网址模式 = [# path('login/', views.user_login, name='login'),path('', views.dashboard, name='dashboard'),# 登录/注销网址路径('登录/', auth_views.LoginView.as_view(template_name='registration/login.html'), name='login'),路径('注销/', auth_views.LogoutView.as_view(template_name='registration/logged_out.html'), name='注销'),路径('注销然后登录/', auth_views.logout_then_login, name='logout_then_login'),]
views.py 文件
from django.contrib.auth import authentication, login从 django.contrib.auth.decorators 导入 login_required从 django.http 导入 HttpResponse从 django.shortcuts 导入渲染@需要登录定义仪表板(请求):返回渲染(请求,'account/dashboard.html',{'section':'dashboard'})
base.html 模板
{% 加载静态文件 %}<!doctype html><html lang="zh-cn"><头><meta charset="UTF-8"><元名称=视口"content="width=device-width, user-scalable=no, initial-scale=1.0, maximum-scale=1.0, minimum-scale=1.0"><meta http-equiv="X-UA-Compatible" content="ie=edge"><title>{% block title %}{% endblock %}<link rel="stylesheet" href="{% static "css/base.css" %}">头部><身体><div id="标题"><span class="logo">书签</span>{% if request.user.is_authenticated %}<ul class="菜单"><li>{% if section == "dashboard" %}class="selected"{% endif %}><a href="{% url "account:dashboard" %}">我的仪表盘</a></li><li>{% if section == "images" %}class="selected"{% endif %}<a href="#">Images</a></li><li>{% if section == "people" %}class="selected"{% endif %}<a href="#">People</a></li>{% 万一 %}<span class="user">{% if request.user.is_authenticated %}你好 {{ request.user.first_name }}, <a href="{% url "account:logout %}">Logout</a>{% 别的 %}<a href="{% url "account:dashboard" %}"></a>{% 万一 %}</span>
<div id="内容">{% 块内容 %}{% 结束块 %}