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)

执行结果:

相关推荐
李高钢9 小时前
Python Flask 框架入门:从零搭建你的第一个 Web 应用
前端·python·flask
Patrick在香港9 小时前
Python 分析香港 AQHI 归档 1644 天:同一天的空气,早上 8 点报 3,下午 5 点报 10
开发语言·python·数据分析·api·restful·数据可视化·开放数据
逐米时代1 天前
AR加知识库提升一次修复率
后端·restful
半亩码田1 天前
【.NET新特性·第17篇】EF Core 10 与 Aspire 13.1
python·flask·.net
2601_962078032 天前
构建RESTful APIs:使用Python和Flask
python·flask·web开发·api设计·构建restfulapis
2601_962382433 天前
基于Flask构建的Doge风格备忘录Web应用:支持用户注册、任务分类与完成状态管理
flask·web应用·备忘录·用户认证·数据库集成
jsjzsl23 天前
独立自由度框架下位置自由度的本体论特征、物理现象与新技术路径
python·flask·fastapi
2601_962099084 天前
python flask sqlalchemy连接数据库流程介绍
数据库·python·flask·教程·sqlalchemy
烂蜻蜓4 天前
Flask入门教程(附录):模板渲染API——Jinja2集成全解析
后端·python·flask
千里码aicood5 天前
Flask-基于图神经网络的谣言检测研究
人工智能·神经网络·flask