Я использую django-filter и django-pure-pagination расширенияКак пройти QuerySet с исключением из параметров в расширении Джанго фильтра
class BuyFilterView(PaginationMixin, FilterView):
filterset_class = ProductFilter
template_name = "buy_filter.html"
context_object_name = "goods"
paginate_by = 50
def get_context_data(self, **kwargs):
context = super(BuyFilterView, self).get_context_data(**kwargs)
context['cart'] = Cart.objects.get(user=self.request.user)
return context
class ProductFilter(FilterSet):
country = ChoiceFilter(choices=country_values)
brand = ChoiceFilter(choices=brand_values)
type = ChoiceFilter(choices=type_values)
class Meta:
model = Goods
fields = {
'country': ['exact'],
'brand': ['exact'],
'type': ['exact'],
}
Некоторые элементы в Goods
модели имеют пустое значение цены. Я хочу исключить их из запроса. Как я могу это сделать?
Есть ли смысл использовать FilterView в этом случае? –
Не так, потому что вы явно определяете свои данные контекста в get_context_data(). Вместо этого вы можете использовать TemplateView. – ozren1983
Похоже, что TemplateView не реализует MultipleObjectMixin, который используется для разбивки на страницы. Вы случайно не знаете, как сделать это с разбивкой на страницы? –