我已经试过上百万次让它起作用了。我一个人过了一个星期就回来了。我已经搜索并阅读了每一篇与此相关的文章。我让不安全的弱智在消息组中轻视他们,却找不到答案。我只想让这件事成功。当我继续学习Django教程的第三部分时,我会看到您为索引页面制作模板的部分,当我在浏览器中检查它时,它会出现TemplateDoesNotExist at /polls/。我已经检查了文件所有权,并将其到处移动,总是在setting.py中更改文件所有权。我已经用管道把文件的内容发送给cat,以确保它正常工作。我有一些可怕的动物给陌生的神,让它们开始工作。我现在转向你。我相信这是有史以来最愚蠢的事情,我对此毫不怀疑。我只想让它起作用。
我不知道你想要/需要的代码/回溯的哪些部分,让我知道我会张贴它们。我在Ubuntu10.10上做这个
编辑
来自settings.py
TEMPLATE_DIRS = (
"home/kevin/first/tutorial/temps"
)这个曾经生活在~,但我搬到了项目文件夹,认为它会有帮助。
结构(省略所有已编译的python文件):
~/first/tutorial/:
__init__.py,
manage.py,
polls,
settings.py,
temps,
tut.db,
urls.py
temps:
index.html
polls:
admin.py,
__init__.py,
models.py,
tests.py,
views.py,发布于 2010-10-27 20:48:14
>>> TEMPLATE_DIRS = ( "home/kevin/first/tutorial/temps" )
>>> print TEMPLATE_DIRS
home/kevin/first/tutorial/temps
>>> type(TEMPLATE_DIRS)
<type 'str'>这是一个字符串,不是元组。
TEMPLATE_DIRS = ( "home/kevin/first/tutorial/temps", )那是一个元组。有点像Python抓到你。
此外,使用绝对路径而不是相对路径。
发布于 2010-10-27 20:55:19
首先,这可能与您的问题无关,但最好不要在文件中使用绝对路径。我的settings.py中总是有以下内容
PROJECT_ROOT = os.path.realpath(os.path.dirname(__file__))
TEMPLATE_DIRS = (
os.path.join(PROJECT_ROOT, 'templates'),
)在元组中的元素末尾应该始终有一个逗号,即使它是唯一的或最后一个,因此Python实际上认为它是一个元组,而不是计算到任何其他类型。
您还应该确保您的TEMPLATE_LOADERS设置包含以下内容或如下所示:
TEMPLATE_LOADERS = (
'django.template.loaders.filesystem.Loader',
'django.template.loaders.app_directories.Loader',
)如果这不能修复它(不管如何,您仍然应该保留上面的内容),那么这个问题很可能与您要呈现的模板有关。确认在视图中使用的模板字符串与templates目录中模板的相对路径是否正确。换句话说,如果模板字符串在视图中是'polls/index.html',请确保文件实际上位于templates/polls/index.html。
发布于 2012-01-12 05:43:55
我在我的settings.py配置文件中使用的是:
"TEMPLATE_DIRS = (
'/path/to/folder/Python-templates',
)"而且起作用了。我猜(如果我错了请纠正我)的是,django教程中的示例引用了模板文件夹中模板的确切位置,即polls。因此,在本教程中找到的示例中,polls/index.html路径文件表示“polls文件夹中已经在settings.py中指定的模板文件夹中的index.html文件”。
https://stackoverflow.com/questions/4037232
复制相似问题