使用蓝图Blueprint来分模块组织管理
1.简介
1.一个应用可以具有多个Blueprint
2.一个Blueprint并不是一个完整的应用,它不能独立于应用运行,而必须要注册到某一个应用中
3.可以将一个Blueprint注册到任何一个未使用的URL下比如 “/user”、“/goods”
app.register_blueprint(user_bp, url_prefix='/user') 中的url_prefix来定义
4.Blueprint可以单独具有自己的模板、静态文件或者其它的通用操作方法
2.例子
./
├── app.py
└── user
├── __init__.py
└── views.py
app.py
from flask import Flask, Blueprint
from user import user_bp
app = Flask(__name__)
app.register_blueprint(user_bp)
user/__init__.py
from flask import Blueprint
user_bp = Blueprint('user', __name__)
# 导入该package的module否则无法获取
# 必须放在user_bp后面,因为views要用到user_bp
from . import views
user/views.py
from . import user_bp
@user_bp.route('/user')
def get_users():
return 'get users'
3.指定蓝图的url前缀
app.register_blueprint(user_bp, url_prefix='/user')
4.给蓝图指定静态文件夹和模板目录
admin = Blueprint("admin",__name__,static_folder='static_admin')
admin = Blueprint('admin',__name__,template_folder='templates')
注意不要加路径templates虽然与默认的根目录下的’templates’相同,但是会在蓝图目录下寻找
本文介绍如何使用Flask的Blueprint特性进行模块化应用开发。Blueprint允许开发者将应用分解为多个模块,每个模块拥有自己的路由、视图、模板和静态文件。通过注册Blueprint到主应用并设置URL前缀,可以实现清晰的代码结构和灵活的URL管理。

528

被折叠的 条评论
为什么被折叠?



