我想制作一个在某个教程中找到的简单博客应用程序,但是我似乎已经停止在这一步,我试图在该主页的主页上发布一个简单的模板。
我知道这是在django范例中看到的一个众所周知的问题,但我根本不知道该怎么办。
我将'templates'文件夹移至主目录文件夹,来回移回了app文件夹;我确保文件名正确无误,如我指定的路径一样。我确保在INSTALLED_APPS处提到了该应用程序的名称,以确保django将加载该应用程序的模板
我得到的回报是:
请求方法:GET要求网址:http://localhost:8000/Django版本:3.0.2异常类型:TemplateDoesNotExist异常值:blog / home.html
这是我的settings.py的INSTALLED_APPS部分:
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')
TemplateDoesNotExist错误提示它在模板文件夹中找不到blog / home.html。
如果不是这种情况,您能否提供有关文件夹结构的更多详细信息?
应该是这样的
my_blog_project
- manage.py
- blog_app
-- urls.py
-- views.py etc...
- templates
-- blog
--- home.html
这里是。我忘了分享。
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对应用程序文件进行的每次编辑后都不愿意自我更新之外,我所做的一切都正确。我确实关闭了该应用程序并重新启动了几次,而没有重新启动计算机。由于某些未知原因,它在闲置了几个小时后仍能正常工作。