我想让Django用virtualenv工作。我已经在网上找到了hello world页面。但是,现在似乎出现了一些错误,因为我的大多数命令都给出了关于myProject.settings的相同错误
(myenv)user@mint /opt/myenv/myProject $ python manage.py startapp polls
Traceback (most recent call last):
File "manage.py", line 13, in <module>
execute_from_command_line(sys.argv)
File "/opt/myenv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 453, in execute_from_command_line
utility.execute()
File "/opt/myenv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 392, in execute
self.fetch_command(subcommand).run_from_argv(self.argv)
File "/opt/myenv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 263, in fetch_command
app_name = get_commands()[subcommand]
File "/opt/myenv/local/lib/python2.7/site-packages/django/core/management/__init__.py", line 109, in get_commands
apps = settings.INSTALLED_APPS
File "/opt/myenv/local/lib/python2.7/site-packages/django/conf/__init__.py", line 53, in __getattr__
self._setup(name)
File "/opt/myenv/local/lib/python2.7/site-packages/django/conf/__init__.py", line 48, in _setup
self._wrapped = Settings(settings_module)
File "/opt/myenv/local/lib/python2.7/site-packages/django/conf/__init__.py", line 134, in __init__
raise ImportError("Could not import settings '%s' (Is it on sys.path?): %s" % (self.SETTINGS_MODULE, e))
ImportError: Could not import settings 'myProject.settings' (Is it on sys.path?): No module named myProject.settings
(myenv)user@mint /opt/myenv/myProject $
你试过这样的东西吗?也许会有用。
python必须导入您的
settings.py
。这可以通过几种方式实现:PYTHONPATH
环境中有包含myProject
的文件夹,即sys.path
注意,^{} 是python用来构建这个
sys.path
的系统环境变量,它的修改依赖于os。对于mac os,请参见this reference;对于windows,请参见this。注意,PYTHONPATH
仅用于构造sys.path
,其随os.environ['PYTHONPATH']=<some_new_value>
的变化没有显著影响。但是,可以动态修改
sys.path
,以帮助import
模块查找所需的包,请参见以下示例:myProject
的文件夹中运行python manage.py
。为了让后者发挥作用,您的项目结构必须如下所示:
DJANGO_SETTINGS_MODULE
更改为settings
,而不是myProject.settings
,或者使用--settings=settings
参数运行python manage.py
。检查python sys.path中是否有
'/opt/myenv/myProject'
。 (参见python doc:sys.path[0])是包含用于调用python解释器的脚本的目录。如果脚本目录不可用(例如,如果以交互方式调用解释器或从标准输入读取脚本),则路径[0]是空字符串(http://docs.python.org/2/library/sys.html#sys.path)类似的问题:ImportError: Could not import settings,Could not import settings 'myproject.settings' (Is it on sys.path?): No module named pinax
相关问题 更多 >
编程相关推荐