AppConfig中的虚线名称

时间:2015-03-31 19:28:26

标签: django django-apps

使用django 1.7,他们添加了对配置类的支持,而不是之前版本的魔术字符串。

我的项目将多个应用程序放入名为apps的文件夹中,该文件夹已添加到PYTHON_PATH

添加一个简单的AppConfig派生类后,我遇到了很多导入错误,我想排除愚蠢的错误。

假设这个结构:

project_root/
    my_project/
    apps/
        my_app/
        another_app/

拥有此配置是否正确?:

# my_app/apps.py
class MyAppConfig(AppConfig):
    name = 'apps.my_app'


# my_app/__init__.py
default_app_config='apps.my_app.apps.MyAppConfig'

# settings.py
INSTALLED_APPS = (
    ...
    'apps.myapp.apps.MyAppConfig'
    ...
)

当尝试导入models(或tasks或任何其他模块)时,项目失败:

from apps.my_app.tasks import AwesomeTask

ImportError: no module named my_app.tasks

1 个答案:

答案 0 :(得分:1)

我通过重命名 apps 文件夹解决了类似的问题。它与Django内部系统有些冲突。

我希望这有助于某人。