簡體   English   中英

TemplateDoesNotExist at /(django 的路由問題)

[英]TemplateDoesNotExist at /(Routing issue with django)

我想制作一個我在一些教程中找到的簡單博客應用程序,但我似乎已經停止在這一步,我試圖為我的網站主頁發布一個簡單的模板。

我知道這是 django 范式中的一個眾所周知的問題,但我根本不知道還能做什么。

我將“模板”文件夾移到主目錄文件夾上,來回移動到應用程序文件夾; 我確保文件名與我指定的路徑一樣正確; 我確保我在 INSTALLED_APPS 中提到了應用程序的名稱,以確保 django 會加載應用程序的模板

我得到的回報是:

請求方法:GET 請求 URL: http://localhost:8000/ Django 版本:3.0.2 異常類型:TemplateDoesNotExist 異常值:
博客/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

//LE:事實證明,我做的一切都是正確的,只是我不知道 django 不喜歡在我對應用程序的文件所做的每次編輯后進行自我更新。 我確實關閉了應用程序並重新啟動了幾次並且沒有重新啟動我的機器。 由於某種未知原因,它在幾個小時不活動后工作正常。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM