python之 flask 框架(2)项目拆分的 执行逻辑

项目的结构图

app.py

python 复制代码
# 导入__init__.py   比较特殊
from APP import create_app

app = create_app()
if __name__ == '__main__':
    app.run(debug=True)


init.py

python 复制代码
# __inti__.py
# 初始化文件,创建Flask应用
from flask import Flask
from .views import blue


def create_app():
    app = Flask(__name__)
    app.register_blueprint(blueprint=blue)
    return app

views.py

python 复制代码
# views.py   路由 + 视图函数
from flask import Blueprint
from .models import *

# 蓝图
blue = Blueprint('view', __name__)


@blue.route('/')
def index():
    return 'Index114'

执行的逻辑:

app.py 执行,python 都是按顺序从上到下执行的

  1. from APP import create_app() 导入 init .py
    1. from flask import Flask 因Flask 是系统框架 ,不做深究
    2. from .views import blue 导入 views.py 文件
      1. from flask import Blueprint 因Flask 是系统框架 ,不做深究
      2. blue = Blueprint('view', name) 生命蓝图 程序运行之前 路由就声明好了
    3. def create_app(): 声明生成flask应用的 函数
  2. app = create_app() 生成app flask对象
  3. app.run()
相关推荐
寻星探路5 分钟前
【深度长文】万字攻克网络原理:从 HTTP 报文解构到 HTTPS 终极加密逻辑
java·开发语言·网络·python·http·ai·https
lly2024062 小时前
Bootstrap 警告框
开发语言
2601_949146532 小时前
C语言语音通知接口接入教程:如何使用C语言直接调用语音预警API
c语言·开发语言
曹牧2 小时前
Spring Boot:如何测试Java Controller中的POST请求?
java·开发语言
KYGALYX2 小时前
服务异步通信
开发语言·后端·微服务·ruby
zmzb01033 小时前
C++课后习题训练记录Day98
开发语言·c++
ValhallaCoder3 小时前
hot100-二叉树I
数据结构·python·算法·二叉树
猫头虎3 小时前
如何排查并解决项目启动时报错Error encountered while processing: java.io.IOException: closed 的问题
java·开发语言·jvm·spring boot·python·开源·maven
YUJIANYUE4 小时前
PHP纹路验证码
开发语言·php
仟濹4 小时前
【Java基础】多态 | 打卡day2
java·开发语言