flask_restful规范返回值之参数设置

设置重命名属性和默认值
使用 attribute 配置这种映射 , 比如: fields.String(attribute='username')
使用 default 指定默认值,比如: fields.String(default='sxt')

复制代码
from flask import Flask,render_template
from flask_restful import Api,Resource,fields,marshal_with

app = Flask(__name__)
api =Api(app)

class News:
    def __init__(self,code,msg,info):
        self.code = code
        self.msg = msg
        self.info = info
        self.state= 1000

class NewsView(Resource):
    resouce_fileds = {
        # 通过参数default来设置默认值
        'code':fields.Integer(default=200),
        'msg':fields.String,
        # 通过参数attribute来设置提取数据的字段
        'content':fields.String(attribute='info'),
        # 优先级不如真实数据里面的高
        'state':fields.Integer(default=2000)
         }
    @marshal_with(resouce_fileds)
    def get(self):
        return News(200,'访问成功!','移动')
    
    @marshal_with(resouce_fileds)
    def post(self):
        return {'msg':'增加数据成功','info':'联通'}
    
    @marshal_with(resouce_fileds)
    def put(self):
        # 在返回对象时,会自动在对象中获取与约定好的字段,并获取分装成json
        news = News(404,'访问成功','移动')
        return news

api.add_resource(NewsView,'/news/')

if __name__=="__main__":
    app.run(debug=True)

执行结果:

相关推荐
龙腾AI白云4 小时前
数字孪生国内外发展现状
数据分析·flask·virtualenv·fastapi
YFLICKERH5 小时前
【Python-Web后端开发框架】Flask | Django | FastAPI | Tornado 选型与 使用 | 特性
前端·python·flask
大黄说说8 小时前
RESTful API 与 GraphQL:架构选型指南
架构·restful·graphql
龙腾AI白云1 天前
数字孪生底层逻辑和技术
深度学习·django·flask·fastapi·tornado
xjt_09011 天前
用 LiteLLM 打通 Codex CLI 与 Claude Code(有key即可实现编程自由)
后端·python·flask
大黄说说1 天前
RESTful API vs GraphQL:设计哲学、性能博弈与选型指南
后端·restful·graphql
薛不痒1 天前
模型部署:基于flask和pytorch
人工智能·pytorch·python·深度学习·flask
麦聪聊数据1 天前
为什么 AI Agent 需要 RESTful API 而不是直接执行 SQL?
人工智能·sql·restful
Bright Data2 天前
Pinterest 数据集示例
后端·python·flask
2501_921649492 天前
免费港股实时行情 API:功能、性能与接入指南
开发语言·后端·python·金融·restful