Django模板不存在

时间:2016-09-15 17:45:52

标签: django windows python-3.x django-templates pycharm

所以我在Windows上工作,我尝试加载我的websit主页。但是我得到的模板不存在''错误我不知道为什么,

TemplateDoesNotExist at /
home/home.html
Request Method: GET
Request URL:    http://127.0.0.1:8000/
Django Version: 1.10.1
Exception Type: TemplateDoesNotExist
Exception Value:    
home/home.html
Exception Location: C:\Python35\lib\site-packages\django\template\loader.py in get_template, line 25
Python Executable:  C:\Python35\python.exe
Python Version: 3.5.2
Python Path:    

Here is my Tracerback

你可以看到Django甚至无法加载一些模板进行测试。我见过其他有同样问题的人,但是在leat那里有一个试用过的模板列表,我甚至没有这个。

这是我的家/ views.py

class IndexView(View):
    template_name = 'home/home.html'

    # not logged in
    def get(self, request):
        return render(request, self.template_name)

这是我的setting.py中的模板变量

TEMPLATE = [
    {
        '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',
            ],
        },
    },
]

在我的代码中,我的结构是 this您可以看到我在installed_app

中添加了Home

在更改项目的路径根后,更改我的python版本(3.5而不是2.7)将模板文件夹放在我的manage.py的同一级别上,并将APPS_DIR更改为false我仍然什么也得不到。我试着知道它是否是一个路径问题,所以我把文件放在项目的根目录下并使用python的isFile函数进行测试,返回为true但如果我尝试渲染页面相同的链接,我会得到错误。所以我不知道它是不是我的代码,我的项目配置(虚拟环境,django等)而且我真的很讨厌我使用pycharm和我在Windows 8.1上

2 个答案:

答案 0 :(得分:0)

您可以尝试使用settings.py中的此路径正确调用模板:

'DIRS': [
            os.path.join(PROJECT_ROOT, 'templates').replace('\\','/'),
        ],

答案 1 :(得分:0)

您不应将应用放在apps包裹上。尝试将应用程序架构替换为

INSTALLED_APPS = [
   'applications.events',
   'applications.student',
   'applications.resume',
   'applications.home`,
]

而不是"something.apps.somethingelse"

即Pythonic。