В Marshmallow
, чтобы иметь поле списка, вы можете использовать:
include_in = fields.List(cls_or_instance=fields.Str(),
default=['sample1', 'sample2'])
Это нормально, но у меня есть новое требование иметь список словарей в поле. Пример полезной нагрузки:
[{
"name": "Ali",
"age": 20
},
{
"name": "Hasan",
"age": 32
}]
Эта полезная нагрузка является частью большой схемы, , поэтому теперь вопрос как мне добавить и проверить такое поле?
EDIT-1:
Я пошел еще дальше и обнаружил, что в Marshmallow
есть тип поля Dict
, поэтому до сих пор у меня есть следующий пример кода:
fields.List(fields.Dict(
keys=fields.String(validate=OneOf(('name', 'age'))),
values=fields.String(required=True)
))
Теперь возникает новая проблема, и я не могу установить разные типы данных для полей в словаре (name
и age
). Я был бы счастлив, если бы кто-то мог пролить свет на это.