Django-项目启动时自定义执行py文件

django启动时,在读取项目中根路由 之前先执行某个.py文件。

具体实现方法:

​ 在任意app的apps.py中的Config类中定义ready方法,并调用autodiscover_modules

app01/apps.py

from django.apps import AppConfig
from django.utils.module_loading import autodiscover_modules

class App01Config(AppConfig):
    name = 'app01'

    def ready(self):
        autodiscover_modules('thisme')

django在启动时,就会去已注册的所有app的目录下找 thisme.py 文件并自动导入执行。

如果执行两次,是因为django内部自动重启导致:

​ 解决方法:

  • python manage.py runserver 120.0.0.1:8001 --noreload
  • Pycharm中,在Run/debug Configurations中设置 Additional options: --noreload

你可能感兴趣的:(Django-项目启动时自定义执行py文件)