2011-11-24 13 views
8

Używam stroju siana django z xapian jako wyszukiwarki backendu. Używam FacetedSearchView i FacetedSearchForm do fasetowania nad wyszukiwaniem. Przekazałem searchqueryset do FacetSearchView w moim pliku urls.py.Policz wszystkie obiekty wyszukiwania w szablonie za pomocą django-haystack

Ale problem polega na tym, że nie mam dostępu do szablonu w postaci searchqueryset. Wszystko, co chcę zrobić, to policzyć liczbę obiektów znalezionych w searchqueryset.

W powłoce mógłbym osiągnąć to za pomocą S earchQuerySet().filter(content="foo").count(), jak mogę to zrobić podobnie w szablonie? Proszę przewodnika. Chcę całkowitą liczbę obiektów pasujących do wyszukiwania.

Odpowiedz

30

Stóg używa standardowego django paginacji: https://docs.djangoproject.com/en/dev/topics/pagination/

Pokazuje {{ page.object_list|length }} z {{ page.paginator.count }} wyników na stronie {{ page.number }} z {{ page.paginator.num_pages }}

+0

Dziękuję, że działa zgodnie z oczekiwaniami. – tejinderss

+1

Jeśli to zadziałało, czy możesz oznaczyć to jako rozwiązanie? –

0
{{ page.object_list | length }} 
+0

to tylko mówi, jak wiele obiektów są na tej stronie wyników. Nie zawiera informacji, ile wyników zostało zwróconych w sumie (np. Wyświetlanie 20 z 53 - Pokazywanie {{page.object_list | length}} z {{W JAKI SPOSÓB MOŻESZ OTRZYMAĆ TEN LICZBĘ NA TUTAJ}}) –

5

Jeśli chcesz pokazać zakres wynik zamiast numeru strony, na przykład „Wyniki 21-40 z 1001”, można zrobić

Results {{ page.start_index }} - {{ page.end_index }} of {{ page.paginator.count }} 
Powiązane problemy