如何配置django独立应用自动安装所有子应用?



问题描述

我有django独立的应用程序命名为django_codeserver。它可以作为一个pip包从我的私有包注册表中加载。

我的app包含大约20个子app,例如django_codeserver.headers,django_codeserver.genders

当前行为要注册我使用django_codeserver的项目中的所有模型,我必须注册父项目INSTALLED_APPS中的所有子应用程序,例如:

INSTALLED_APPS = [
...
'django_codeserver.headers',
'django_codeserver.genders'
...
]

首选行为我希望所有的子应用程序被注册在父项目,当我只有:

  1. 使用pip-package (pip Install django- coserver)安装独立的django应用
  2. 在父项目中只注册父应用:
INSTALLED_APPS = [
'django_codeserver
]

研究这个问题后,我找不到确切的解决办法。然而,我们可以处理这里指出的这个问题。

所以我们不能自动安装子应用程序,但是我们可以重用包含所有子应用程序的应用程序,而不直接在父项目INSTALLED_APPS中编写所有应用程序。

通过这种方式,可重用应用的安装文档在添加新的子应用后不会改变。同时,包含的子应用的维护从可重用应用的消费者转移到它的提供者。

最新更新