微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

位于/ accounts / login / login.html的TemplateDoesNotExist

如何解决位于/ accounts / login / login.html的TemplateDoesNotExist

我尝试使用认的django登录系统。我的错误是我的login.html模板不存在。

我的登录模板保存在根目录中。.> templates> registration> login.html

使用自定义用户模型和令牌身份验证。.

这是我尝试过的..>

帐户urls.py

from django.contrib.auth import views as auth_views
from django.conf.urls import url
from django.urls import path 


urlpatterns = [
    path("login/",auth_views.LoginView.as_view(template_name = "login.html"),name='login'),path("logout/",auth_views.logoutView.as_view(),name='logout'),]

主应用程序Urls.py

from django.contrib import admin
from django.urls import path,include

from rest_framework.urlpatterns import format_suffix_patterns

from django.conf.urls.static import static
from django.conf import settings
from django.conf.urls import url

from articles.views import ArticleDetail,ArticleList
from account.views import AccountList

from rest_framework.authtoken import views


urlpatterns = [
    path('admin/',admin.site.urls),path('article/',ArticleList.as_view()),path('article/<int:pk>/',ArticleDetail.as_view()),path('accounts/',AccountList.as_view()),include('account.urls'))
]

urlpatterns += static(settings.MEDIA_URL,document_root=settings.MEDIA_ROOT)

urlpatterns = format_suffix_patterns(urlpatterns)

settings.py#

中的模板目录
TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates','Dirs': [os.path.join(BASE_DIR,'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',],},]

使用自定义用户模型和令牌授权会影响登录系统吗?

解决方法

您必须更改template_name,一切都会正常工作

template_name = "registration/login.html"

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。