Мне нужно довольно часто отслеживать N и записывать, когда он в последний раз ответил. Идея заключалась в том, чтобы сохранить текущий статус и дату последнего_ответа N в соответствующем NA, и во время сериализации я сделал это:
Код: Выделить всё
class NomenclatureSerializer(serializers.ModelSerializer):
status = serializers.SerializerMethodField()
last_answer = serializers.SerializerMethodField()
...
def get_status(self, obj) -> int | None:
try:
return obj.availability.status
except AttributeError:
return None
def get_last_answer(self, obj) -> str:
try:
return f'{obj.availability.last_answer_date:%Y-%m-%d %H:%M:%S}'
except AttributeError:
return 'Was never online'
Недавно я начал изучать FastAPI + Pydantic + SQLAclhemy, так как в DRF большая часть кода уже была реализована до меня. Итак, я начал переписывать свой проект на новой платформе и не совсем понимаю, как добиться этой вещи SerializerMethodField() + def get_ в pydantic.
Подробнее здесь: https://stackoverflow.com/questions/793 ... tic-schema