SimpleListInput — это класс с элементами свойств. Элементы свойства — это кто принимает список строк.
>>> data, errors = SimpleListInput().load({'items':['some', 'value']})
>>> print data, errors
{'items': [u'some', u'value']}
{}
>>> data, errors = SimpleListInput().load({'items':[]})
>>> print data, errors
{'items': []}
{}
>>> data, errors = SimpleListInput().load({})
>>> print data, errors
{}
{'items': [u'Missing data for required field.']}
Если вы хотите пользовательскую проверку, например, не принимать пустой список в элементах:
from marshmallow import fields, Schema, validates, ValidationError
class SimpleListInput(Schema):
items = fields.List(fields.String(), required=True)
@validates('items')
def validate_length(self, value):
if len(value) < 1:
raise ValidationError('Quantity must be greater than 0.')
Затем...
>>> data, errors = SimpleListInput().load({'items':[]})
>>> print data, errors
{'items': []}
{'items': ['Quantity must be greater than 0.']}
Взгляните на Проверка.
ОБНОВЛЕНИЕ:
Как @Turn прокомментировал ниже. Ты можешь это сделать:
from marshmallow import fields, Schema, validate
class SimpleListInput(Schema):
items = fields.List(fields.String(), required=True, validate=validate.Length(min=1))
person
Jair Perrut
schedule
29.09.2016
errors
? Когда я пробую ваш пример, кажется, что для него установлено соответствующее значение. - person larsks   schedule 15.05.2016