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()
相关推荐
JaydenAI10 分钟前
[拆解LangChain执行引擎] 持久状态的提取
python·langchain
啊阿狸不会拉杆17 分钟前
《机器学习导论》第 17 章 - 组合多学习器
人工智能·python·学习·算法·机器学习·聚类·集成学习
小lo想吃棒棒糖18 分钟前
思路启发:超越Transformer的无限上下文:SSM-Attention混合架构的理论分析
人工智能·pytorch·python
YGGP21 分钟前
【Golang】LeetCode 189. 轮转数组
开发语言·leetcode·golang
Web打印22 分钟前
Phpask(php集成环境)之01安装Apache
开发语言·php·apache
Zachery Pole23 分钟前
JAVA_07_面向对象
java·开发语言
dc_001224 分钟前
Java进阶——IO 流
java·开发语言·python
沐知全栈开发28 分钟前
DOM 遍历
开发语言
桂花很香,旭很美30 分钟前
[7天实战入门Go语言后端] Day 3:项目结构与配置——目录组织、环境变量与 viper
开发语言·数据库·golang