我的模板无法识别,我收到以下错误。
os.path.dirname(__file__)+'\\template' NameError: name 'os' is not defined
我在设置中使用的代码是:
os.path.dirname(__file__)+'\\template'
我现在应该怎么做。
答案 0 :(得分:2)
导入模块os
import os
答案 1 :(得分:2)
您可以在Definitive Guide to Django页面99:
中看到相关知识import os.path
TEMPLATE_DIRS =(os.path.join(os.path.dirname(__file__),'templates').replace('\\','/'),)
在哪里解释它是如何工作的
此示例使用自动设置的“magic”Python变量文件 到代码所在的Python模块的文件名。它得到了的名字 包含settings.py(os.path.dirname)的目录,将其与模板中的连接 跨平台方式(os.path.join),然后确保所有内容都使用正斜杠 而不是反斜杠(在Windows的情况下)。
答案 2 :(得分:1)
os模块丢失您已经使用它而不导入
在settings.py中添加此内容
import os
TEMPLATE_DIRS = (os.path.join(os.path.dirname(__file__), 'templates'),)
将所有模板放在项目的模板文件夹下
你可以在windows中使用像linux(/ home / your_project /../ templates)这样的绝对路径(“C:/ your_project /../ templates”) 但这不是好习惯