Django/Python 环境错误?
我在尝试使用 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