Указывает, как ujson обрабатывает сериализацию пользовательского объекта?
У меня есть пользовательский объект, который я хочу войти с помощью модуля logger в Python.
Я записываю это с помощью dict:
logger.info({
'message': 'something happened',
'object': my_custom_object,
})
Проблема заключается в использовании регистратора ujson.dumps()
сериализовать входы в logger.info()
,
ujson.dumps()
преобразует my_custom_object в список имен переменных экземпляра. Это не очень полезно. Я хочу указать кастом toJson
или же toDict
метод, который нужно использовать при попытке сериализации этого метода.
Это возможно?
Немного похоже на то, как вы можете указать __str__
метод и каждый раз, когда Python пытается преобразовать ваш объект в строку, он будет вызывать этот метод вместо.
1 ответ
Решение
Видимо, вы на самом деле можете реализовать toDict
метод на объекте, и это будет работать.