Я пробовал
voluptuous
и schema
, оба из которых простые и вежливые в проверке, но они оба делают отчет об ошибках на основе исключений, т.е. не работают при первой ошибке. Есть ли способ получить все ошибки проверки данных в "Чувствительности" или "Схема"?
Я нашел jsonschema
, который, похоже, соответствует некоторым требованиям, но не имеет проверки для ключей объектов и проверки на основе специальных функций ( например, лямбда).
Требование:
def myMethod(input_dict):
#input_dict should abide to this schema ->
# { 'id' : INT , 'name':'string 5-10 chars','hobbies': LIST OF STRINGS }
# for incorrect input like
# {'id': 'hello','name':'Dhruv','hobbies':[1,2,3] }
# I should be able to return all errors like
# ['id' is not integer,'hobbies' is not list of strings ]