У меня есть такая модель:
class A:
name = models.CharField()
group = models.ForeignKey('SomeModel', null=True, blank=True)
Когда я сериализую это, я бы хотел, чтобы сериализатор имел разные форматы в зависимости от того, является ли поле 'group' пустым или нет.Конечно, этого можно добиться, используя разные сериализаторы для разных форматов и вызывая их по мере необходимости в слое View:
class TypeASerializer(serializers.ModelSerializer)
class Meta:
model = A
fields = ('id', 'name')
class TypeBSerializer(serializers.ModelSerializer)
class Meta:
model = A
fields = ('id', 'name', 'group')
Но я хотел обработать его в самом слое сериализатора и иметь для этого один сериализатор,Это возможно?