django - 已安装的应用 - 错误:没有名为 apps.finance 的模块
我想改变一下我的应用程序所在的目录。我的 Django 项目在这个目录下:
'/home/user/djcode/dev/myproject'
当我开始这个项目时,我的应用程序是在这个目录下:
'/home/user/djcode/dev/myproject'
在 settings.py 文件中,我还添加了这一行(在 INSTALLED_APPS 里):
'finance',
这样一切都正常运作。
后来我想改变我的应用程序目录,所以我把应用程序移动到了:
'/home/user/djcode/dev/myproject/myproject/apps'
然后在 settings.py 中,我把 'finance' 改成了这一行(在 INSTALLED_APPS 里):
'myproject.apps.finance'
但是当我运行 python manage.py runserver 命令时,出现了这个错误:
Error: No module named apps.finance
我知道我可以直接添加路径到我的应用程序所在的位置,这样应该能解决问题。但有没有办法在不添加 .pth 文件的情况下指定这个路径呢?
我的意思是,如果 Python 知道 /home/user/djcode/dev/myproject
这个路径,为什么它找不到 /home/user/djcode/dev/myproject/myproject/apps
呢?
也许我在 installed_apps 中指定得不对?
另外,我在这个项目中使用了 virtualenv,所以 Django 是通过 virtualenv 安装的。但我觉得这没关系,因为它能找到我的项目位置,但如果应用程序在更低的目录层级下就找不到了,真是让人困惑。
1 个回答
2
或者可能是循环导入的问题?或者你在应用的目录里没有一个init.py文件?