• 开发必备知识点--django项目启动时,url加载之前,执行某个.py文件


    django项目启动时,自定义执行某个py文件

    在任意的app下的apps.py中的Config类下自定义ready()方法,并且调用autodiscover_modules。

    app01/apps.py

    1 from django.apps import AppConfig
    2 from django.utils.module_loading import autodiscover_modules
    3 
    4 
    5 class App01Config(AppConfig):
    6     name = 'app01'
    7 
    8     def ready(self):
    9         autodiscover_modules('xxx.py')

    app02/apps.py

    1 from django.apps import AppConfig
    2 from django.utils.module_loading import autodiscover_modules
    3 
    4 class App02Config(AppConfig):
    5     name = 'app02'
    6 
    7     def ready(self):
    8         autodiscover_modules('xxx.py')

     为了验证我们在urls.py打印一句话

    1 from django.contrib import admin
    2 from django.urls import path
    3 
    4 print('路由开始加载')
    5 urlpatterns = [
    6     path('admin/', admin.site.urls),
    7 ]

     然后分别在两个项目目录下新建xxx.py文件,代码如下

    1 # app01/xxx.py
    2 print('app01下的xxx.py')
    3 
    4 # app02/xxx.py
    5 print('app02下的xxx.py')

    一切都准备好了,开始运行吧。

    效果图已经说明我们自定义执行某个py文件成功了。

    注意:为什么会执行两遍呢?因为WiMAX的django是默认重启的。会自动检测我们的代码是否改动。

    如果不想看到,执行的时候命令:python manage.py runserver --noreload

  • 相关阅读:
    django学习----http协议
    线程进程和协程
    内置函数
    我所了解的递归
    函数的闭包和装饰器
    字符串的内置方法
    格式化输入输出
    逻辑运算符和操作运算符
    python流程控制
    计算机网络原理
  • 原文地址:https://www.cnblogs.com/xjmlove/p/10087053.html
Copyright © 2020-2023  润新知