Задать вопрос
  • Django-haystack как добавить фасеты с 0 совпадений при фильтрации?

    @man_of_motley Автор вопроса
    Вроде разобрался: нужно переопределить get_queryset в FacetedSearchView, чтобы добавить параметр min_doc_count.
    class MySearchView(FacetedSearchView):
        form_class = MySearchForm
        facet_fields = ['category', 'color', 'size']
        template_name = 'products/search_result.html'
        paginate_by = 3
        context_object_name = 'object_list'
    
        def get_queryset(self):
            qs = super(MySearchView, self).get_queryset()
            for field in self.facet_fields:
                qs = qs.facet(field, min_doc_count=0)
            return qs
    Ответ написан
    Комментировать