遵循Django教程文档,位于/ hello / vscode的TemplateDoesNotExist

时间:2019-04-02 16:21:56

标签: django visual-studio-code django-templates

遵循https://code.visualstudio.com/docs/python/tutorial-django上的Django教程,但在/ hello / vscode中出现了TemplateDoesNotExist错误。

错误是

hello/hello_there.html
Request Method: GET
Request URL:    http://127.0.0.1:8000/hello/vscode
Django Version: 2.2
Exception Type: TemplateDoesNotExist
Exception Value:    
hello/hello_there.html
Exception Location: C:\Users\v770704\Documents\hello_django\env\lib\site-packages\django\template\loader.py in get_template, line 19
Python Executable:  C:\Users\v770704\Documents\hello_django\env\Scripts\python.exe
Python Version: 3.7.3
Python Path:    
['C:\\Users\\v770704\\Documents\\hello_django',
 'c:\\Users\\v770704\\.vscode\\extensions\\ms-python.python-2019.3.6215\\pythonFiles',
 'C:\\Users\\v770704\\AppData\\Local\\Programs\\Python\\Python37-32\\python37.zip',
 'C:\\Users\\v770704\\AppData\\Local\\Programs\\Python\\Python37-32\\DLLs',
 'C:\\Users\\v770704\\AppData\\Local\\Programs\\Python\\Python37-32\\lib',
 'C:\\Users\\v770704\\AppData\\Local\\Programs\\Python\\Python37-32',
 'C:\\Users\\v770704\\Documents\\hello_django\\env',
 'C:\\Users\\v770704\\Documents\\hello_django\\env\\lib\\site-packages']

这是一个路径问题,因为找不到hello / templates / hello / hello_there.html的路径,但是该路径和文件确实存在。

Settings.py的DIRS值为空,这是我在本教程中被告知要用于DIRS的值。

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': [],
        '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',
            ],
        },
    },
]

Template-loader验尸说:

Django tried loading these templates, in this order:

Using engine django:

django.template.loaders.app_directories.Loader: C:\Users\v770704\Documents\hello_django\env\lib\site-packages\django\contrib\admin\templates\hello\hello_there.html (Source does not exist)
django.template.loaders.app_directories.Loader: C:\Users\v770704\Documents\hello_django\env\lib\site-packages\django\contrib\auth\templates\hello\hello_there.html (Source does not exist)

如果我将hello / templates / hello文件夹复制到它正在查找的路径,

C:\Users\v770704\Documents\hello_django\env\lib\site-packages\django\contrib\admin\templates, 

该网页正常工作,因此它似乎只是一个路径配置问题。

我从另一篇文章中尝试过此方法,但收到相同的错误:

'DIRS': [os.path.join(BASE_DIR, "templates")], 

即使输入目录的完整文字路径也不起作用。

在此先感谢您的帮助。

0 个答案:

没有答案