Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Count total search objects count in template using django-haystack

I am using django haystack with xapian as the backend search engine. I am using FacetedSearchView and FacetedSearchForm for faceting over the search. I have passed searchqueryset to the FacetSearchView in my urls.py file.

But the problem is I cannot access that searchqueryset in template. All I want to do is count the number of objects in searchqueryset found.

In shell I could achieve it using SearchQuerySet().filter(content="foo").count(), how can I do that similarly in the template? Please guide. I want the total number of objects matching the search.

like image 624
tejinderss Avatar asked Nov 24 '11 18:11

tejinderss


2 Answers

Haystack uses the standard django pagination: https://docs.djangoproject.com/en/dev/topics/pagination/

Showing {{ page.object_list|length }} of {{ page.paginator.count }} Results on Page {{ page.number }} of {{ page.paginator.num_pages }}

like image 60
Francis Yaconiello Avatar answered Oct 12 '22 03:10

Francis Yaconiello


If you want to show the result range instead of page number, e.g. "Results 21-40 of 1001", You can do

Results {{ page.start_index }} - {{ page.end_index }} of {{ page.paginator.count }}
like image 6
mynameistechno Avatar answered Oct 12 '22 03:10

mynameistechno