Django视图没有从项目文件夹加载

时间:2017-08-11 05:29:33

标签: python django

我在Django中加载视图时出现问题。仅供参考,我们对Django很新;)

我得到的错误是在/ polls /

的TemplateDoesNotExist

Django正在从"异常位置加载 " /Users/NAME/anaconda/envs/Django/lib/python2.7/site-packages/django/template/loader.py"

它应该从" /Users/NAME/Documents/Django/template/index.html"

加载

我的APP中有view.py

return render(request,'index.html')

我的settings.py

TEMPLATES = [
    {
        'BACKEND': 'django.template.backends.django.DjangoTemplates',
        'DIRS': ["/Users/NAME/Documents/Django/template/"],

如何从项目文件中加载视图?

文件结构

total 0

drwxr-xr-x  6 NAME  staff  204 11 Aug 16:17 Django

drwxr-xr-x  6 NAME  staff  204 26 Jun 23:17 test




./Django:

total 32

drwxr-xr-x  10 NAME  staff    340 11 Aug 16:17 Django

-rw-r--r--   1 NAME  staff  12288 10 Aug 21:09 db.sqlite3

-rwxr-xr-x   1 NAME  staff    804 10 Aug 21:08 manage.py

drwxr-xr-x  15 NAME  staff    510 11 Aug 16:17 polls



./Django/Django:

total 56

-rw-r--r--  1 NAME  staff     0 10 Aug 21:08 __init__.py

-rw-r--r--  1 NAME  staff   147 10 Aug 21:09 __init__.pyc

-rw-r--r--  1 NAME  staff  3160 11 Aug 10:14 settings.py

-rw-r--r--  1 NAME  staff  2648 11 Aug 10:14 settings.pyc

-rw-r--r--  1 NAME  staff   176 10 Aug 21:24 urls.py

-rw-r--r--  1 NAME  staff   402 10 Aug 21:25 urls.pyc

-rw-r--r--  1 NAME  staff   390 10 Aug 21:08 wsgi.py

-rw-r--r--  1 NAME  staff   603 10 Aug 21:09 wsgi.pyc



./Django/polls:

total 80

-rw-r--r--  1 NAME  staff    0 10 Aug 21:19 __init__.py

-rw-r--r--  1 NAME  staff  146 10 Aug 21:25 __init__.pyc

-rw-r--r--  1 NAME  staff  128 10 Aug 21:19 admin.py

-rw-r--r--  1 NAME  staff  150 10 Aug 21:19 apps.py

drwxr-xr-x  3 NAME  staff  102 10 Aug 21:19 migrations

-rw-r--r--  1 NAME  staff  122 10 Aug 21:19 models.py

-rw-r--r--  1 NAME  staff  264 10 Aug 21:43 models.pyc

drwxr-xr-x  3 NAME  staff  102 10 Aug 21:40 templates

-rw-r--r--  1 NAME  staff  125 10 Aug 21:19 tests.py

-rw-r--r--  1 NAME  staff  116 10 Aug 21:23 urls.py

-rw-r--r--  1 NAME  staff  326 10 Aug 21:25 urls.pyc

-rw-r--r--  1 NAME  staff  184 11 Aug 15:56 views.py

-rw-r--r--  1 NAME  staff  483 11 Aug 15:56 views.pyc

3 个答案:

答案 0 :(得分:0)

Django仍在搜索旧目录/ polls /中的模板,可能有几个原因。简化的解决方案是确保停止服务器,然后重新启动它。在django开发服务器中,当您保存文件时,它将执行软重载,但是,对settings.py文件的任何更改都需要完全停止(使用Ctrl + C)并重新启动才能实现。

另外,为了确保目录正确,我建议添加

import os

在文件的开头和

print{os.getcwd()}

在你回来之前。这样你就可以看到它正在搜索的完整路径。

答案 1 :(得分:0)

指定如下目录:

'DIRS': ["/Users/NAME/Documents/Django/template/"],

错了。您应该使用path.join和BASE_DIR来构建路径。如果你把它留空,我认为你根本不需要指定模板目录,那么它也可以工作。

'DIRS': []

当你把它留空时,Django会在app_folder/templates

中搜索模板

您的设置问题首先是您的路径错误,您的模板位于轮询目录而不是Django目录中。第二,你也有一个拼写错误template,而它应该是templates

解决方案:指定此 -

'DIRS': []

在您的设置和其他设置和代码中都可以。

答案 2 :(得分:0)

我解决了,

setting.py 文件中

'DIRS': ["/Users/NAME/Documents/Django/template/"],

需要

'DIRS': ['polls/templates'],

它接缝Django社区非常强大和乐于助人。这将是我继续使用Django的主要原因:)

非常感谢大家帮助我。对不起那个问题。