Django Webapp中的TemplateDoesNotExist错误

whlutmcx  于 12个月前  发布在  Go
关注(0)|答案(1)|浏览(99)

当我尝试使用默认的django登录页面时,我得到了这个错误:
/login/registration/login.html
这是我的URL文件:

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

    from . import views

    urlpatterns = [
        path("", views.home, name="home"),
        path("main-page/", views.main_page, name="main-page"),
        path("kick-page/", views.kick_page, name="kick-page"),
        path('', include("django.contrib.auth.urls")), # add django auth pages for login  
    ]

字符串
这是我的views文件:

from django.shortcuts import render
    from django.http import HttpResponse
    from django.contrib.auth import login, authenticate
    from .forms import * #import all the forms from forms.py

    def home (response):
        form = SignIn()
        return render(response, "main/home.html", {"form": form})

    #need a page to select site/microtik, and add/remove microtiks
    def main_page (response):
        return render(response, "main/main_page.html", {})

    #Need a page that shows the selected mictotik and a form to enter MAC of device to kick
    def kick_page (response):
        return render(response, "main/kick_page.html", {})


这是我的目录结构:

C:.
└───microsite
    │   db.sqlite3
    │   manage.py
    │
    ├───main
    │   │   admin.py
    │   │   apps.py
    │   │   forms.py
    │   │   models.py
    │   │   tests.py
    │   │   urls.py
    │   │   views.py
    │   │   __init__.py
    │   │
    │   ├───migrations
    │   │   │   __init__.py
    │   │   │
    │   │   └───__pycache__
    │   │           __init__.cpython-311.pyc
    │   │
    │   ├───templates
    │   │   └───main
    │   │       │   base.html
    │   │       │   home.html
    │   │       │   kick_page.html
    │   │       │   main_page.html
    │   │       │
    │   │       └───registration
    │   │               login.html
    │   │
    │   └───__pycache__
    │           admin.cpython-311.pyc
    │           apps.cpython-311.pyc
    │           forms.cpython-311.pyc
    │           models.cpython-311.pyc
    │           urls.cpython-311.pyc
    │           views.cpython-311.pyc
    │           __init__.cpython-311.pyc
    │
    └───microsite
        │   asgi.py
        │   settings.py
        │   urls.py
        │   wsgi.py
        │   __init__.py
        │
        └───__pycache__
                settings.cpython-311.pyc
                urls.cpython-311.pyc
                wsgi.cpython-311.pyc
                __init__.cpython-311.pyc


我遵循技术与蒂姆的指南,尝试在我的网站上添加访问控制,这样用户就必须在访问网站上的其他视图之前登录。
我把错误沿着与我的文件信息到聊天GPT,它一直告诉我,错误是造成时,文件“login.html”不存储在一个文件夹中称为“注册”内的模板文件夹。
我有三重检查拼写和验证文件的位置,但我仍然无法得到登录页面加载。我所有的其他网页加载罚款沿着与他们的模板。
如果有人能帮我弄清楚到底发生了什么,我会非常感激。

f87krz0w

f87krz0w1#

您遇到TemplateDoesNotExist错误的原因是由于templates/registration目录的位置。请确保此目录位于项目的根目录中,特别是microsite/templates/registration/login.htmllogin.html文件的正确路径应该相对于Django识别和访问的项目根目录。

相关问题