Указание одного из многих ключей для ответа сериализатора DRF
Я создаю API по спецификации, которая была определена третьей стороной, ответ возвращает список элементов, каждый из которых задан ключом, указывающим его тип.
Пример:
[
{
'someType': {
'name': 'some type instance',
'someTypeSpecificField': 'foo',
}
},
{
'someOtherType': {
'name': 'some other type instance',
'someOtherTypeSpecificField': 123,
}
},
{
'someType': {
...
}
},
...
]
Где все элементы ответа получены из одной модели, т.е.
class SomeModel(models.Model):
name = models.CharField()
type = models.ChoiceField()
...
Мне стало интересно, как лучше всего определить этот тип вывода с помощью сериализаторов DRF. В идеале он должен быть достаточно DRF
-ым, чтобы его можно было правильно разобрать в нашем AutoSchema
, но любые решения приветствуются.