【问题标题】:Django apps custom folderDjango 应用程序自定义文件夹
【发布时间】:2017-01-22 15:55:41
【问题描述】:
我使用的是 Django 1.10,并创建了一个名为“apps”的文件夹。我想将我所有的应用程序放在这个目录中,但是当我尝试在 appB.models 中导入 appA.models 时,我收到了这个错误。
RuntimeError:模型类 appA.models.model 未声明显式 app_label 且不在 INSTALLED_APPS 中的应用程序中。
这两个应用程序都在已安装的应用程序中声明,例如“apps.appA”。所有文件夹都有初始化文件。
【问题讨论】:
标签:
django-models
django-apps
【解决方案1】:
首先在您的应用文件夹中创建一个名为“init.py”的空文件。现在在 INSTALLED_APPS 的 root settings.py 文件中添加你所有的应用程序然后它就可以工作了。
【解决方案2】:
解决方案是创建一个名为 applications 的文件夹,其中包含 init.py 文件。每个应用程序都必须具有包含此内容的文件 apps.py
from __future__ import unicode_literals
from django.apps import AppConfig
class AppnameConfig(AppConfig):
name = 'appname'
同样在设置安装的应用程序中,使用这种格式“applications.appname”调用应用程序