flask》》Blueprint 蓝图

蓝图加前缀

pp.register_blueprint(auth_bp, url_prefix='/xxx')

python 复制代码
# 创建蓝图时就指定 url_prefix
auth_bp = Blueprint('auth', __name__, url_prefix='/auth')

@auth_bp.route('/login')
def login():
    return "Login page"

# 注册时可以不再指定,或者再添加外层前缀
app.register_blueprint(auth_bp)  # 实际路径:/auth/login
# 或者叠加前缀
app.register_blueprint(auth_bp, url_prefix='/api/v1')  # 实际路径:/api/v1/auth/login
python 复制代码
# project/blueprints/user.py
from flask import Blueprint

user_bp = Blueprint('user', __name__, url_prefix='/user')

@user_bp.route('/profile')
def profile():
    return "User Profile"

# project/blueprints/admin.py
from flask import Blueprint

admin_bp = Blueprint('admin', __name__, url_prefix='/admin')

@admin_bp.route('/settings')
def settings():
    return "Admin Settings"

# app.py
from flask import Flask
from project.blueprints.user import user_bp
from project.blueprints.admin import admin_bp

app = Flask(__name__)

# 注册时统一添加 API 版本前缀
app.register_blueprint(user_bp, url_prefix='/api/v1')
app.register_blueprint(admin_bp, url_prefix='/api/v1')

# 最终路由:
# /api/v1/user/profile
# /api/v1/admin/settings
python 复制代码
# 动态前缀示例
app.config['API_PREFIX'] = '/api/v2'
app.register_blueprint(user_bp, url_prefix=app.config['API_PREFIX'])






相关推荐
会编程的土豆17 小时前
MySQL 多表查询
开发语言·数据库·python·mysql
2403_8832610917 小时前
PHP调用Codex处理PHP特定语法【操作】
jvm·数据库·python
程序员三明治17 小时前
【AI】Prompt 工程入门:从五要素框架到 RAG 生产级 Prompt 模板与 Java 实战
java·人工智能·后端·大模型·llm·prompt·agent
旷世奇才李先生17 小时前
React 18\+Next\.js 14实战:服务端渲染与跨端开发全指南
java·人工智能·python
m0_4636722017 小时前
CSS如何定义可重用的阴影效果_通过CSS变量管理box-shadow参数
jvm·数据库·python
lbb 小魔仙17 小时前
LangChain + RAG 知识库系统搭建指南:从零构建企业级文档问答系统
python·langchain
雨辰AI17 小时前
SpringBoot3 + 人大金仓 V9 全栈日志实战:Logback + Loki + Filebeat 构建统一日志平台
java·数据库·后端·云原生·eureka·logback·政务
石小石Orz17 小时前
OpenAI官方:harness-engineering(工程技术:在智能体优先的世界中利用 Codex)
前端·后端
梦道长生17 小时前
对于extend和append无法解决的字典解析情况
python
2501_9010064717 小时前
c++如何利用C++23 std--print加速大量格式化数据的文件IO性能【进阶】
jvm·数据库·python