1

我正在(慢慢地!)完成 Django 教程,并且我已经到了第 2 部分中应该设置 template_dir 的地方。我在我的用户配置文件驻留在服务器上的 Mac(工作中)上,但我不知道如何设置路径。

教程文件位于名为“tutorialshell”的文件夹中,位于名为“Django”的文件夹中,这是我的用户文件夹“mattshepherd”中的一级文件。例如,当我启动终端时,该文件夹是本机文件夹:它总是在“mattshepherd”中启动我。

我试过了

"~/Django/tutorialshell/templates"

"home/Django/tutorialshell/templates"

到目前为止没有运气。我想这样做有一些技巧,因为我试图链接到的文件在我的用户文件夹中的网络驱动器上,而不是在我的本地硬盘驱动器上。建议?

4

3 回答 3

3

您想要绝对路径,而不是相对路径。如果您进入~/Django/tutorialshell/templates终端然后键入pwd,它将告诉您该文件夹的完整路径。这就是您应该为路径输入的值。

另外:我假设您实际上是在谈论TEMPLATE_DIRS?如果是这样,请记住它是一个路径列表,所以它应该如下所示:

TEMPLATE_DIRS = (
    "/path/to/Django/tutorialshell/templates", # don't forget that trailing comma!
)
于 2012-05-31T17:16:07.063 回答
1

/Users/mattshepherd/Django/tutorialshell/templates

请记住,Jordan 提到了一个模板目录列表。上述位置应该可以工作。在 mac 中,用户主目录位于/Users/+yourusername

如果 /Users/ 不起作用,它可能是 /home/。

于 2012-05-31T17:16:49.737 回答
1

正如其他人所说,您需要绝对路径。但我真的建议你使用相对路径。它将使您的代码更加灵活。有很多方法可以做到这一点,这是我通常做的:

import os
ROOT = os.path.abspath(os.path.dirname(__file__))

然后对于模板只需执行以下操作:

os.path.join(ROOT, 'templates')

您说您使用的是 Mac,但在使用 Windows 的情况下,您可以通过将“//”替换为“/”来使代码更加灵活。

于 2012-06-01T07:03:21.120 回答