Skip to main content
 首页 » 编程设计

python之Django 自定义应用程序配置

2024年08月21日37txw1958

我想运行在 django 应用程序中只执行一次的代码。

我的结构:

company 
  project 
    common 
      project_config.py 
  __init__.py 

__init__.py:

default_app_config = "company.project.common.ProjectConfig" 

settings.py:

.. 
INSTALLED_APPS = ( 
  "company.project" 
) 
.. 

ProjectConfig.py:

from django.apps import AppConfig 
 
class ProjectConfig(AppConfig): 
    name = "company.project" 
 
    def ready(self): 
        do_something() 

我没有看到我的配置中的 ready() 方法被调用。

怎么了?

请您参考如下方法:

根据documentation ,你不需要 _init_.py 文件,只需将 INSTALLED_APPS 指向 AppConfig 子类:

试试这个:

INSTALLED_APPS = ( 
  'company.project.common.ProjectConfig', 
)