• 93.(后端)分类参数增加接口实现——flask框架使用蓝图与restful发送请求添加数据


    1.概述

    1.1参数详解

    对于添加的操作接口,需要的传递参数如下:
    id自动生成,无需传递

    参数名参数说明备注
    cid分类ID不能为空
    name参数说明不能为空
    _type[static, dynamic]不能为空
    val静态:单值 动态:该值以逗号隔开可选参数

    2.主要代码

    2.1创建蓝图对象

    创建蓝图对象的方式可以查看之前的文章,这里就不过多讲啦
    flask框架使用蓝图与restful发送请求添加数据

    本次就不再单独创建文件夹,就写在原先的category中

    # flask_shop/category/__init__.py
    # user用于管理用户的蓝图
    
    from flask import Blueprint
    # 注册flask_restful路由
    from flask_restful import Api
    
    # 创建蓝图,记得要注册
    #定义好传递给的变量 蓝图对象名称      前缀名                  
    category = Blueprint('category', __name__)
    # 注册flask_restful路由
    category_api = Api(category)
    
                     
    attribute = Blueprint('attribute', __name__, url_prefix='/category')
    attribute_api = Api(attribute)
    
    from flask_shop.category import view
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19

    添加如下代码

    # flask_shop/category/view.py
    from flask_shop.category import category,category_api, attribute, attribute_api
    
    • 1
    • 2

    注册蓝图

    #flask_shop/__init__.py
    # 用于初始化app对象
    from flask import Flask
    # 导入数据库
    from flask_sqlalchemy import SQLAlchemy
    # 获取是哪种开发模式
    from config import config_map
    
    
    # 先不连接app对象,否则报错,在下面创建app对象时默认连接数据库,就可以了
    db = SQLAlchemy()
    
    def create_app(config_name):
        app = Flask(__name__)
        # 获取到字典中的哪种类,获取到对应的类名,再给到from_object获取到对应的参数
        obj = config_map.get(config_name)
        # 加载数据库到Flask中
        app.config.from_object(obj)
        # 默认连接数据库
        db.init_app(app)
    
        # 注册用户的蓝图
        from flask_shop.category import attribute
        app.register_blueprint(attribute)
        
        return app
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26

    创建函数接口

    # flask_shop/category/view.py
    from flask import request
    from flask_shop.category import category,category_api, attribute, attribute_api
    from flask_shop import models,db
    from flask_restful import Resource
    from flask_shop.utils.message import to_dict_msg
    # attribute表
    # restful形式发送请求
    class Attribute(Resource):
        # 增加数据
        def post(self):
            name = request.form.get('name')
            cid = request.form.get('cid')
            _type = request.form.get('_type')
            val = request.form.get('val')
    
            if all([name, cid, _type]):
                if val:
                    attr = models.Attribute(name=name, cid=int(cid), _type=_type, val=val)
                else:
                    attr = models.Attribute(name=name, cid=int(cid), _type=_type)
                db.session.add(attr)
                db.session.commit()
                return to_dict_msg(200,msg="添加商品分类数据成功!!!!")
            else:
                return to_dict_msg(10000)
    
    attribute_api.add_resource(Attribute, '/attribute')
    
    
    • 1
    • 2
    • 3
    • 4
    • 5
    • 6
    • 7
    • 8
    • 9
    • 10
    • 11
    • 12
    • 13
    • 14
    • 15
    • 16
    • 17
    • 18
    • 19
    • 20
    • 21
    • 22
    • 23
    • 24
    • 25
    • 26
    • 27
    • 28
    • 29

    3.Postman测试接口

    在这里插入图片描述

    在这里插入图片描述

  • 相关阅读:
    低代码平台:何以为企业信息安全保驾护航?
    运维困局下确保系统稳定的可行性
    浅谈智能照明控制系统在体育馆中的应用
    阿里云消息团队创新论文被软件工程顶会 FM 2024 录用
    leetcode做题笔记179. 最大数
    JUC并发编程系列详解篇五(线程基础理论进阶)
    MyBatisPlus(九)模糊查询
    【附源码】计算机毕业设计JAVA学生选拔系统
    【开源】SpringBoot框架开发创意工坊双创管理系统
    数据库设计与前端框架
  • 原文地址:https://blog.csdn.net/m0_63953077/article/details/127590330