django dev服务器(manage.py runserver)从哪里获取其路径?

时间:2010-08-05 01:30:32

标签: python django path django-manage.py devserver

我最近将一个django应用程序从c:\Users\user\django-projects\foo\foobar移动到c:\Python25\Lib\site-packages\foo\foobar(位于python路径上)。我在django-projects目录中启动了一个新应用,并将foo.foobar添加到了INSTALLED_APPS设置中。当我尝试为新应用运行开发服务器(manage.py runserver)时,收到错误ImportError: No module named foobar

通过回溯查看,它正在查看c:\Users\user\django-projects\foo\..\foo\foobar应用的foobar。我检查了我的PATHPYTHONPATH环境变量,并且当我运行python解释器时,它都没有指向c:\Users\user\django-projects\foo并且它没有显示在sys.path中。

我猜我在c:\Users\user\django-projects\foo的开发过程中某某时间以某种方式将foo添加到了django的路径中,但我不记得我是怎么做到的。

所以,尽管如此,我的问题是“如何在c:\Python25\Lib\site-packages而不是c:\Users\user\django-projects\foo中查看manage.py?”

谢谢,

  • Lexo

2 个答案:

答案 0 :(得分:1)

manage.py从当前目录导入settings.py,并将settings作为参数传递给execute_manager。您可能在settings.py中定义了项目根目录。

答案 1 :(得分:1)

我修好了,虽然我不知道哪种解决方案有效。首先,我从我的项目中删除了.pyc文件,然后我重新编制了我的Windows搜索索引(我猜这样做了)。这会将错误消息更改为正确的目录。之后,我意识到我有

from baz import settings

在我的foobar/baz/models.py文件中,一直导致问题。我改成了

import settings

解决了这个问题。感谢laurent的所有帮助: - )