1

我的模板无法识别,我收到以下错误。

os.path.dirname(__file__)+'\\template' NameError: name 'os' is not defined

我在设置中使用的代码是:

os.path.dirname(__file__)+'\\template'

我现在该怎么办。

4

3 回答 3

2

导入模块 os

import os
于 2012-12-18T07:41:17.833 回答
2

您可以在 Django第 99 页权威指南中看到相关知识 :

import os.path

TEMPLATE_DIRS =(os.path.join(os.path.dirname(__file__),'templates').replace('\\','/'),)

哪里解释了它是如何工作的

这个例子使用了“神奇”的 Python 变量文件,它被自动设置为代码所在的 Python 模块的文件名。它获取包含 settings.py (os.path.dirname) 的目录的名称,以跨平台方式将其与模板连接 (os.path.join),然后确保所有内容都使用正斜杠而不是反斜杠(在Windows 的情况)。

于 2012-12-18T08:55:50.310 回答
1

os 模块丢失 你已经使用它没有导入

在你的 settings.py 中添加这个

import os
TEMPLATE_DIRS = (os.path.join(os.path.dirname(__file__), 'templates'),)

并将所有模板放在项目中的模板文件夹下

你可以在windows(“C:/your_project/../templates”)中使用像linux(/home/your_project/../templates)这样的绝对路径,但这不是一个好习惯

于 2012-12-18T09:29:44.593 回答