LINUX.ORG.RU

Зарезольвить в сериализаторе поля из foreignkey

 , ,


0

1

Есть таблица1

some1 = ...
some2 = ...
some3 = ...

Есть таблица2

zzz1 = ...
zzz2 = ...
zzz3 = foreignkey(таблица1)

в queryset’e при

таблица2.objects.filter(some1='fweewf').values()

выводит:

{
  zzz1: "aaa",
  zzz2: "bbb",
  zzz3: 12, где 12 - foreignkey объект
}

мне нужно сделать так:

{
  zzz1: "aaa",
  zzz2: "bbb",
  zzz3: 12,
  some1 = ...
  some2 = ...
  some3 = ...
}

Я так понимаю, что в сериализаторе(serializers.ModelSerializer) нужно как-то объявить поля some1 some2 some3 и указать DRF, что это объекты foreignkey. Как это сделать?

Но вот так мне не нужно(специфика апи такая, используется динамический fields, мне именно поля в queryset нужно добавить и объявить их в сериализаторе):

{
  zzz1: "aaa",
  zzz2: "bbb",
  zzz3: 12,
  "some_related": 
     { some1 = ...
       some2 = ...
       some3 = ...
     }
}
★★★

Последнее исправление: serg002 (всего исправлений: 3)

Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.