django rest framework рекурсивный вывод вложенных записей, api вывод отзывов к фильму - урок 5

preview_player
Показать описание
В уроке по django rest framework реализуем вывод родительских и дочерних отзывов к фильму. Разберем ListSerializer, метод to_representation и свойство list_serializer_class
Не забудь подписаться на канал, чтобы не пропустить новые видео.

---=---
🔥Провожу индивидуальные занятия (ментор) по python, django, fastapi, javascript
---=---

Мы в сети:

---=---

#django #djangorestframework #djangoschool #drf #программирование #python
Рекомендации по теме
Комментарии
Автор

*serializer = self.parent.parent.__class__(value, context=self.context)*
Жаль что не обьяснил как работает ето выражение, мне кажеться для начинающих лучше было бы написать:
*serializer = ReviewSerializer(value, context=self.context)*
, и уже в следующих уроках переписать на изначальное.
*Обьяснение:*
Выражение *self.parent.parent.__class__(value, context=self.context)* Берет екземпляр сериализатора parent который есть ListSerializer (он появился изза того что мы передали *many=True* в RecursiveSerializer ) после етого он берет parent екземпляр нашего parenta и достает сылку на его клас, и выражение стает идентичным тому что я написал в 3строке.

olegmlavets
Автор

Благодарю за урок, пойду изучать следующий по плейлисту :)

liza.metla.
Автор

Не понял, почему не использовать вложенный сериализатор. Может 3 года назад такой фичи не было?

ahil
Автор

Огромное спасибо за уроки! Не понял один момент по поводу FilterReviewSerializer. в поле children у reviewresializer хранится сам же reviewserializer. Так разве filter не должно работать на них внутри children? Я про parent = None. У всех children оно будет не None, почему же filter не работает на них?

gstiqbm
Автор

а как думаеш насчет количество запросов к дб? както оптимизирует надо. я сталкивался именно с этой проблемой

ozodsaidov
Автор

Привет, подскажи пожалуйста Как получать вложенные элемента до какого-то уровня

TheVenom
Автор

Рекурсивно вызывая родителей мы постоянно делаем новые запросы в БД, что не является хорошим решением. Есть ли способ получить из базы сразу всю иерархию родителей за 1 запрос?

jdrlimd