有使用flask_restful的?marshal attribute 不生效是什么情况?

resource_fields{
    'id':fileds.Integer,
    'name':fields.String(attribute='private_name')
}
@marshal_with(resource_fields)
def get(self):
    pass

使用attribute重命名字段名并不生效,这是什么情况?

阅读 3.2k
1 个回答

resource_fields结构用于作为 marshal 函数的模板。在你的例子中,如果不指定attribute属性值时,默认等于key值为“name”。
attribute属性的作用不是重命名字段名,而是显式指定需要格式化的数据源的key值,所以首先你要确认你需要格式化的数据中是否存在“private_name”这个键值。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进