基于flask Blueprint源代码笔记

flask中blueprint实现原理

本质是在app中添加一个路由规则

刚学python ,勿喷

项目结构

image.png

app/main/init.py : blueprint(蓝本文件)

image.png

代码第三行创建了一个Blueprint类

main = Blueprint(main, __name__)

app/init.py:项目初始化文件,主要创建app

image.png

代码32行调用了上面的main(蓝本)

app.register_blueprint(main_blueprint) 
image.png

这里的self其实是前面调用的app,然后找到register


image.png

image.png
image.png

register中在核心代码是

state = self.make_setup_state(app, options, first_registration)

make_setup_state 返回的是BlueprintSetupState类
调用了BlueprintSetupState中的add_url_rule()

你可能感兴趣的:(基于flask Blueprint源代码笔记)