【问题标题】:TemplateDoesNotExist at / boards/home.htmlTemplateDoesNotExist 位于 /boards/home.html
【发布时间】:2021-10-12 20:30:33
【问题描述】:

我正在使用 Django 创建我的第一个站点并遵循教程。 Tutorial here.

我遇到的问题是尝试使用标准 http://127.0.0.1:8000/ 加载网站时,出现错误

TemplateDoesNotExist at /
boards/home.html

Django 说它正在尝试遵循以下路径:“C:\Users\myuser\Desktop\Development\myproject\myproject\boards\templates\boards\home.html(源不存在)”

当我将该路径直接放入我的文件资源管理器时,它会毫无问题地加载文件。

这是我的 urls.py:

from django.urls import path

from boards import views

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

还有我的views.py:

from .models import Board

def home(request):
    boards = Board.objects.all()
    return render(request, 'boards/home.html', {'boards': boards})

settings.py 在 INSTALLED_APPS 标题下有“boards”(应用程序的名称)。

我的文件结构是这样的:

我希望有人可以提供帮助。只要问我是否遗漏了什么。

【问题讨论】:

  • 请添加分辨率好的照片
  • 但是你的模板位置应该是myproject->boards->templates->boards->home.html
  • @mhhabib 抱歉,我还没有足够的声望来嵌入图像。是的,这正是文件所在的位置,也正是 Django 正在寻找的位置。

标签: python django django-views django-templates


【解决方案1】:

我认为板目录应该在“C:\Users\myuser\Desktop\Development\myproject”下,而不是在“C:\Users\myuser\Desktop\Development\myproject\myproject”下。这是我的 Django 项目结构。

.
├── README.md
├── core    <-- "board" in your project
│   ├── __init__.py
│   ├── admin.py
│   ├── apps.py
│   ├── models.py
│   ├── static
│   │   └── core
│   ├── templates
│   │   └── core
│   ├── tests.py
│   ├── urls.py
│   └── views.py
├── db.sqlite3
├── manage.py
├── scan_system    <-- "myproject" in your project
│   ├── __init__.py
│   ├── asgi.py
│   ├── settings.py
│   ├── urls.py
│   └── wsgi.py

【讨论】:

  • 这也是我的基本结构,只是全部包裹在另一个文件夹中,其中包含主项目文件夹和虚拟信封文件夹
  • 好的,那么 settings.py 中的 INSTALLED_APPS 怎么样?你添加了你的应用程序吗?(可能是 board.apps.BoardConfig)
  • 我有“板”,但我会尝试 board.apps.BoardConfig。在错误页面回溯中,我可以看到它试图显示的实际数据,尽管文件存在于 Django 所说的确切位置,但它似乎无法加载模板。我想知道它是否可能与权限有关?或者是否存在 Django 可以看到文件但由于其他问题而无法使用它的情况?
  • docs.djangoproject.com/en/3.2/intro/tutorial02/…。我有一个经验,我的应用程序找不到模板文件,因为我没有将应用程序注册到项目的 settings.py。
  • 嗯,当我这样做时,Django 甚至不会尝试查找模板目录。 'boards' 至少可以看,但 'boards.app.BoardsConfig' 没有。
猜你喜欢
  • 2019-06-01
  • 2023-03-27
  • 2022-01-11
  • 2013-07-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-07-13
  • 2020-10-29
相关资源
最近更新 更多