По умолчанию аргументы задач Celery могут принимать примитивные типы, списки и дикты в качестве аргументов и возвращаемых значений.
Но что если я захочу отправить и вернуть более сложные значения?Я хотел бы использовать что-то вроде классов данных Python 3.7 в качестве аргументов и возвращаемых значений.Поскольку я использую Python 3.6, я использую бэкпорт класса данных, но из того, что я могу сказать, это почти то же самое.
Когда я пытаюсь отправить или вернуть экземпляр класса данных, я получаю ошибкучто объект не является сериализуемым JSON ... это правильно: сериализатор JSON не знает, как справиться с чем-либо подобным.
Так что есть способ использовать собственный сериализатор JSON, который может обрабатывать класс данныхэкземпляры в качестве аргументов и возвращаемых значений?