Django/Python 环境错误?

2 投票
3 回答
10282 浏览
提问于 2025-04-15 11:50

我在尝试使用 syncdb 的时候遇到了一个错误:

python manage.py syncdb

错误信息:

File "/usr/local/lib/python2.6/dist-packages/django/conf/__init__.py", line 83, in __init__
raise EnvironmentError, "Could not import settings '%s' (Is it on sys.path? Does it have syntax errors?): %s" % (self.SETTINGS_MODULE, e)
EnvironmentError: Could not import settings '/home/simi/workspace/hssn_svn/hssn' (Is it on sys.path? Does ti have syntax errors?): Import by filename is not supported.

我刚接触 Django 和 Python,但在网上查了很久还是搞不懂这个错误是怎么回事。

3 个回答

1

导致这个错误的另一个原因是权限问题,这个问题很难找到。

对我来说,解决办法是把 <myproject> 移动到 /var/www/<myproject> 目录下,然后执行 chown -R root:root /var/www/<myproject> 命令。

1

确保你的settings.py文件和manage.py在同一个文件夹里(你也需要从这个文件夹运行manage.py,也就是用命令./manage.py syncdb),或者把环境变量DJANGO_SETTINGS_MODULE指向这个文件。

12

你的追踪状态:

Import by filename is not supported.

这可能意味着你尝试导入(或者设置 DJANGO_SETTINGS_MODULE)为完整的 Python 文件名,但实际上应该是一个模块路径,比如:your.module.settings

你也可以尝试直接从命令行指定你的 DJANGO_SETTINGS_MODULE,比如:

$ DJANGO_SETTINGS_MODULE=your.module.settings ./manage.py syncdb

撰写回答