Django / Python EnvironmentError?

时间:2009-05-26 14:45:22

标签: python django django-syncdb

我尝试使用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 个答案:

答案 0 :(得分: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

答案 1 :(得分:1)

确保您的settings.py文件与manage.py位于同一目录中(您还必须从此目录运行manage.py,即./manage.py syncdb),或使环境变量DJANGO_SETTINGS_MODULE指向它

答案 2 :(得分:1)

另一个导致此错误的是权限 - 很难追踪。

我的解决方案是将<myproject>移至/ var / www / <myproject> 并执行chown -R root:root / var / www / <myproject>