bQ1, потому что при такой инициализации сериализатора `CommentAnswerSerializer`, он не получает контекст. Посмотрите как инициализируется сериализатор внутри DRF:
def get_serializer(self, *args, **kwargs):
"""
Return the serializer instance that should be used for validating and
deserializing input, and for serializing output.
"""
serializer_class = self.get_serializer_class()
kwargs['context'] = self.get_serializer_context()
return serializer_class(*args, **kwargs)
Зависит, конечно, от того, что у Вас внутри `CommentAnswerSerializer`, но если там внутр идействительно нужен request, предлагаю пробросить его внутрь с контекстов через kwargs.
Расскажите чуть больше о структуре моделей. Конкретно - как хранится продукт, как хранятся объекты магазинов и как они связаны. Тогда можно будет ответить. А пока не понятно.
Кажется, что вы храните количество каждого товара в двух местах в базе (для каждого магазина). Если это так, от этого нужно избавляться.
Подход Романа самый очевидный и совпадает с моим, только один момент: из Вашего вопроса я предполагаю, что наследоваться надо от Container - class A(Container):
Но лучше поясните, для чего Вам такой функционал? Подозреваю, что либо планируется какой-то хитрый функционал на основе этого и иначе никак, либо это не самое лучшее решение, ввиду неочевидностей, которые будут возникать при работе с таким кодом.
Roma Naumenko-Vahnitsky: Вам виднее подойдёт или нет для ваших задач, но про Джангу там всего слайдов 20 из 130 :) И, в основном, это прикручивание описанных "общепитоновских" инструментов к Джанге.
Всё остальное - применимо для чистого питона.
Написано
Войдите на сайт
Чтобы задать вопрос и получить на него квалифицированный ответ.
rest_framework.generics.GenericAPIView#get_serializer
Зависит, конечно, от того, что у Вас внутри `CommentAnswerSerializer`, но если там внутр идействительно нужен request, предлагаю пробросить его внутрь с контекстов через kwargs.