Почему сериализаторы создаются при запуске Django? - PullRequest
0 голосов
/ 20 февраля 2019

Я использую Django rest Framework, и меня смущает, что при запуске Django будет создан экземпляр сериализатора.

Как я могу остановить это поведение?

class MySerializer(ModelSerializer):
    def __init__(self):
        print('hello!') # <= this called when django starts!!

PS

Причина была в том, что сериализатор вызывается как свойство поля класса другого сериализатора (как вложенное поле).Таким образом, MySerializer создается, когда AnotherSerializer импортируется как модуль.

class AnotherSerializer(ModelSerializer):
    some_nested_field = MySerializer()

Итак, я хочу знать, как я могу создать экземпляр MySerializer только при поступлении фактического запроса, а не когдамодуль загружен?

...