我尝试使用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的新手,但在网上研究了一段时间之后我无法弄清楚这个错误。
答案 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>