我已经安装了python3,pip3并为我的项目创建了virtualenv,然后安装了django。我已经安装了所需的软件包,当我尝试在终端中运行此命令时
./manage.py syncdb --settings=myfolder.settings.local
我收到此错误
'DIRS': [os.path.join(BASE_DIR, 'myfolder', 'templates'),], NameError: name 'os' is not defined
我已阅读一些评论,在我的setting.py文件中添加import os
并添加BASE_DIR = os.path.dirname(os.path.abspath(__file__))
我已经在我的设置文件中,但我仍然遇到同样的错误。 我该如何解决?
答案 0 :(得分:2)
您必须在您的模板设置所在的settings.py文件中import os.path
。
import os
...
TEMPLATES = [
{
'DIR':[os.path.join(BASE_DIR, 'templates_folder_name')],
...
}]
答案 1 :(得分:1)
在新版本中,您只需在 DIR 中输入模板文件夹名称
'DIRS':['模板']
答案 2 :(得分:0)
我遇到了同样的错误,所以我只是用 'DIRS': [os.path.join(BASE_DIR, 'myfolder', 'templates'),],
替换了 'DIR': ['templates']
并且它起作用了。
您也可以通过在路径导入行之后直接写入 import os
来解决此错误。
答案 3 :(得分:0)
快速解决方法是在 settings.py 文件的顶部导入 os
# settings.py
import os # new
from pathlib import Path