【发布时间】:2018-12-23 18:04:12
【问题描述】:
我是棉花糖和烧瓶等的新手。 我试图通过创建一个使用 jsonified python 字典的 API 来学习。字典包含这样的嵌套字典。它还包含一些 Null 项。
{
"TITLE": "XXX",
"NAME": "Mongoose",
"TIME": "0430",
"USED": null,
"DESCRIPTION": "",
"WEAPONS": {
"HEAT": "Israel",
"RADAR": "Flat",
"CONV": {
"S": true,
"N": false,
"A": false
},
},
}
我只是想把它用回字典类型。 POST 操作中的类似内容
fields_schema = FieldSchema(many=True)
field_schema = FieldSchema()
json_data = request.get_json(force=True)
if not json_data:
return {'message': 'No input data provided'}, 400
# Validate and deserialize input
try:
data = field_schema.load(json_data)
except ValidationError as e:
return e.messages, 422
数据只是一个嵌套字典。
它定义了导致我出现问题的模式类。 据我所知,在定义架构时,棉花糖没有 JSON 类型,当我使用 fields.Dict 时,出现以下错误:
{
"meta": [
"Missing data for required field."
],
"TITLE": [
"Unknown field."
etc...
我不确定我是否应该考虑使用嵌套架构,或者我是否完全把事情复杂化了。
我的 fields_schema 目前如下所示:
class FieldSchema(ma.Schema):
id = fields.Integer()
meta = fields.Dict(required=True)
任何指针将不胜感激
【问题讨论】:
标签: python-3.x dictionary flask flask-sqlalchemy marshmallow