Форматирование сообщений об ошибках для jsonschema: как использовать ключ -F валидатора?

Когда я запускаю python валидатор jsonschema, он очень долго форматирует сообщения об ошибках. Кажется, что сначала он приводит всю схему, где произошла ошибка, затем упоминает проблемный элемент и, наконец, сообщает само сообщение об ошибке.

Если проблема в корневой схеме, результирующее сообщение становится очень подробным. Какие значения вы вводите в ключ -F при запуске валидатора?


person ganqqwerty    schedule 02.12.2015    source источник


Ответы (1)


Кажется, я разобрался. Строка форматирования для параметра -F должна быть в форме, подходящей для передачи в формат python format. функция. Таким образом, мы можем использовать свойства переменной error, которые перечислены здесь .

Вот пример:

jsonschema hbp_prov_schema_v3.json \
-i tests/hbp_prov_example_real.json \ 
-F "ERROR: {error.path} {error.message}
"

Это обеспечит гораздо более читаемый вывод.

person ganqqwerty    schedule 02.12.2015