【问题标题】:TemplateDoesNotExist at /(Routing issue with django)TemplateDoesNotExist at /(django 的路由问题)
【发布时间】:2020-02-23 14:02:02
【问题描述】:

我想制作一个简单的博客应用程序,我在一些教程中找到了它,但我似乎已经停在这一步,我试图为我的网站主页发布一个简单的模板。

我知道这是 django 范例中的一个众所周知的问题,但我根本不知道还能做什么。

我将“templates”文件夹移到主目录文件夹上方,来回移动到 app 文件夹; 我确保文件名在我指定的路径中是正确的; 我确保我在 INSTALLED_APPS 中提到了应用程序的名称,以确保 django 会加载应用程序的模板

我得到的回报是:

请求方法:GET 请求网址:http://localhost:8000/ Django 版本:3.0.2 异常类型:TemplateDoesNotExist 异常值:
博客/home.html

这是我的 INSTALLED_APPS settings.py 部分:

INSTALLED_APPS = [
'django.contrib.admin',
'django.contrib.auth',
'django.contrib.contenttypes',
'django.contrib.sessions',
'django.contrib.messages',
'django.contrib.staticfiles',
'blog.apps.BlogConfig',

我的模板

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',
        ],
    },
},

最后是来自应用程序的 views.py

from django.shortcuts import render 
from django.http import HttpResponse

def home(request):
    return render(request,'blog/home.html')

【问题讨论】:

  • 您在哪里找到您的模板?

标签: python routing django-views django-templates


【解决方案1】:

TemplateDoesNotExist 错误提示在模板文件夹中找不到 blog/home.html。

如果不是这样,您能否提供有关文件夹结构的更多详细信息?

应该是这样的

my_blog_project
 - manage.py
 - blog_app
  -- urls.py
  -- views.py etc...
 - templates
  -- blog
    --- home.html

【讨论】:

    【解决方案2】:

    来了。忘记分享了。

    C:.
    │   db.sqlite3
    │   manage.py
    │
    ├───blog
    │   │   admin.py
    │   │   apps.py
    │   │   models.py
    │   │   tests.py
    │   │   urls.py
    │   │   views.py
    │   │   __init__.py
    │   │
    │   ├───migrations
    │   │   │   __init__.py
    │   │   │
    │   │   └───__pycache__
    │   │           __init__.cpython-38.pyc
    │   │
    │   ├───templates
    │   │   └───blog
    │   │           home.html
    │   │
    │   └───__pycache__
    │           admin.cpython-38.pyc
    │           apps.cpython-38.pyc
    │           models.cpython-38.pyc
    │           urls.cpython-38.pyc
    │           views.cpython-38.pyc
    │           __init__.cpython-38.pyc
    │
    └───django_project
        │   asgi.py
        │   settings.py
        │   urls.py
        │   wsgi.py
        │   __init__.py
        │
        └───__pycache__
                settings.cpython-38.pyc
                urls.cpython-38.pyc
                wsgi.cpython-38.pyc
                __init__.cpython-38.pyc
    

    //L.E:事实证明,我做的一切都是正确的,只是我不知道 django 不喜欢在我对应用程序的文件进行每次编辑后进行自我更新。 我确实关闭了应用程序并重新启动了几次,并且没有重新启动我的机器。 由于某些未知原因,它在几个小时不活动后运行良好。

    【讨论】:

      猜你喜欢
      • 2018-09-29
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2019-08-21
      • 1970-01-01
      • 2017-09-03
      • 1970-01-01
      • 2014-07-05
      相关资源
      最近更新 更多