我最近将一个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
。我检查了我的PATH
和PYTHONPATH
环境变量,并且当我运行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?”
谢谢,
答案 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的所有帮助: - )