我从1.7看到有https://docs.djangoproject.com/en/dev/ref/applications/#django.apps.AppConfig.ready,但这是每个应用。
我正在寻找的是在加载 Django 时调用某些初始化代码的方法,无论它包含哪些应用程序。 许多人建议将代码添加到wsgi.py,urls.py和settings.py,但所有这些方法都是“脏”的。
我的情况是我有几个应用程序可以成为Django部署的一部分,我希望任何子集都有这个初始化代码。 我可以编写一个特殊的常用应用程序,但我认为必须有一种Django方式来提供初始化代码。
答案 0 :(得分:1)
在较新版本的Django中,您通常有一个项目目录,其中包含与settings.py
和wsgi.py
等全球独立于应用程序的文件。您可以将全局初始化代码添加到该目录中的__init__.py
。
请注意,此代码很早就会运行(甚至在加载设置之前),因此Django API的某些部分尚不可用。