同时向INSTALLED_apps添加多个应用程序



我正在开发一个应用程序,它需要安装另一个应用。我可以将它添加到我的setup.py中,它也会安装其他应用程序。

安装应用程序后,我需要将其添加到INSTALLED_APPS,但我也需要添加外部应用程序。

是否有隐式传递其他应用程序的方法?

建议如何处理这种依赖关系,以避免在需要时要求用户添加多个应用程序?

如果不进行一些奇怪的黑客攻击,就没有办法做到这一点,也不应该有。用户应该知道他们在项目中添加了什么,以及需要什么依赖关系。记住Django的设计理念:

显式优于隐式

看看下面的一些应用程序。它们都需要CCD_ 1中的依赖性。他们在文档中明确表示,用户必须手动将其添加到项目中:

  • 姜戈津尼亚
  • Django Admin2
  • Django Filer
  • Django文件浏览器

有一个名为django-autoconfig的库可以让您做到这一点。基本上,您在应用程序中包含一个autoconfig.py,如果您的应用程序包含在INSTALLED_APPS中,则加载它的autoconfig.py

文件应该看起来像这样:

SETTINGS = {
    'INSTALLED_APPS': [
        'external_app_1',
        'external_app_2',
    ],
}

阅读文档,了解更多关于订购的信息以及类似的高级内容。

相关内容

  • 没有找到相关文章

最新更新