Python Flask蓝图使用

使用示例:

user.py

python 复制代码
from utils.sql import supabase
from flask import Blueprint,request, session
from utils.entity import r
user_bp = Blueprint('user', __name__, url_prefix='/user')

"""----------------------------------------
                API: 用户登录
-------------------------------------------"""
@user_bp.route('/login', methods=['POST'])
def user_login():
    reqJSONData = request.get_json(silent=True)

    if not reqJSONData: return r(code=401, msg='注册失败, 请求参数为空')
    username = reqJSONData.get('username')
    password = reqJSONData.get('password')

    if not all([username, password]):
        return r(code=401, msg='登录, 缺少请求参数')

    user = supabase.table('sys_user').select('*').eq('username',username).eq('password',password).execute().data
    # 4. 用户不存在, 直接返回
    if not user:
        return r(code=404, msg='用户名或密码错误')
    else:
        session['user_info'] = user
        return r(msg='登录成功', data=user)

@user_bp.route('/list', methods=['POST','get'])
def userList():
    user = supabase.table('sys_user').select('*').execute().data
    return user

app.py(也就是主文件)

python 复制代码
from flask import Flask
from flask_cors import CORS
from utils.entity import r

from api.user.user import user_bp
# 创建 Flask 实例
app = Flask(__name__)
app.register_blueprint(user_bp)

CORS(app, supports_credentials=True,resources=r'/*')

@app.route('/', methods=['GET'])
def hello():
    return r(code=200, msg='服务器访问成功!')

if __name__ == '__main__':
    app.run()

总结:

在单文件中创建蓝图:user_bp = Blueprint('user', name, url_prefix='/user')

在主文件中注册蓝图:app.register_blueprint(user_bp)

注意:

  1. 主文件中需要引入一下创建的蓝图
  2. 在app.run之前注册蓝图
相关推荐
钱彬 (Qian Bin)3 小时前
一文掌握工业缺陷检测项目实战(Pytorch算法训练、部署、C++ DLL制作、Qt集成)
c++·pytorch·python·qt·实战·工业缺陷检测·faster rcnn
努力努力再努力wz3 小时前
【c++进阶系列】:万字详解AVL树(附源码实现)
java·运维·开发语言·c++·redis
Python×CATIA工业智造3 小时前
Python迭代协议完全指南:从基础到高并发系统实现
python·pycharm
CHANG_THE_WORLD3 小时前
C++并发编程指南 std::promise 介绍与使用
java·开发语言·c++·promise
egoist20234 小时前
[linux仓库]性能加速的隐形引擎:深度解析Linux文件IO中的缓冲区奥秘
linux·运维·开发语言·缓存·缓冲区
THMAIL4 小时前
机器学习从入门到精通 - Transformer颠覆者:BERT与预训练模型实战解析
python·随机森林·机器学习·分类·bootstrap·bert·transformer
Dear.爬虫4 小时前
Golang的协程调度器原理
开发语言·后端·golang
0wioiw04 小时前
Python基础(①⑧Queue)
windows·python
小菜全4 小时前
使用UniApp实现下拉框和表格组件页面
开发语言·前端·javascript·elementui·前端框架·html
编码浪子4 小时前
趣味学RUST基础篇(构建命令行程序1)
开发语言·后端·rust