Django TemplateView не работает с этим кодом

У меня проблемы с написанием представлений для django oscar extended TemolateView

  class CatalogueView(TemplateView):
       """
       Browse all products in the catalogue
       """
       context_object_name = "products"
       template_name = 'oscar/catalogue/browse.html'
       model = Product

        def get(self, request, *args, **kwargs):
            try:
                self.search_handler = self.get_search_handler(
                self.request.GET, request.get_full_path(), [])
                response = super().get(request, *args, **kwargs)
            except InvalidPage:
                # Redirect to page one.
        
                messages.error(request, _('The given page number was invalid.'))
                return redirect('catalogue:index')
                return response

        def get_search_handler(self, *args, **kwargs):
                return get_product_search_handler_class()(*args, **kwargs)

        def get_context_data(self, **kwargs):
                context = super(CatalogueView,  self).get_context_data(**kwargs)
                ctx = {}
                ctx['summary'] = _("All products")
                ctx['pro_list'] = Product.objects.all()
                ctx['pro_list1'] = Product.objects.all().filter().order_by('upc')
                search_context = self.search_handler.get_search_context_data(
                self.context_object_name)
     
                ctx.update(search_context)
                return ctx

Не обращайте внимания на беспорядочный формат отступов в коде. Django Oscar использует TemplateViews, основанные на классах, и я хочу написать больше кверсетов для моей модели продуктов, но все кажется не работает. get_context_data не работает. Мне нужен способ добавить больше кверсетов в TemplateView в представлении каталога. Как можно решить эту проблему? Мне нужно отфильтровать больше кверсетов для Product

django django-models django-views

Я не знаком с django, но я думаю, что вы можете попробовать:

    def get_context_data(self, **kwargs):
        context = super(CatalogueView,  self).get_context_data(**kwargs)
        context['summary'] = _("All products")
        context['pro_list'] = Product.objects.all()
        context['pro_list1'] = Product.objects.all().filter().order_by('upc')
        search_context = self.search_handler.get_search_context_data(
        self.context_object_name)

        context.update(search_context)
        return context

Уберите эту штуку с ctx.

Вернуться на верх