Co to jest znacznik wyświetlający liczbę pozycji zwróconych na liście obiektów? Na przykład w widoku o nazwie /search/q=my search text here
wyświetlana jest lista artykułów pasujących do zapytania użytkownika. W szablonie chcę wyświetlić liczbę artykułów, które zostały zwrócone przez wyszukiwanie.Co to jest znacznik szablonu django, aby uzyskać liczbę elementów zwróconych w zestawie wyników?
Odpowiedz
Metoda count()
pobiera liczbę przedmiotów pobranych przez zestaw zapytań, do którego jest wywoływana.
Używaj go jak ten '{{}}' articles.count –
Należy zwrócić uwagę, choć. 'count' spowoduje uruchomienie kodu SQL COUNT, jeśli zestaw zapytań nie został jeszcze oceniony. Następnie, po iteracji później, zostanie wykonane kolejne zapytanie DB (SELECT). To są dwa pytania. Jeśli potrzebujesz liczby, zanim faktycznie przełączysz się przez zestaw zapytań lub takich, '{{articles | length}}' jest bardziej wydajne. –
Najlepszym sposobem, aby to zrobić, to myślę:
{{ articles.count }}
- 1. Jak uzyskać losową liczbę w zestawie szablonów?
- 2. Znacznik wydania szablonu django stemplu django
- 3. Co to jest django QuerySet?
- 4. Dynamiczny wybór szablonu django znacznik włączenia
- 5. Co to jest prekompilacja szablonu javascript?
- 6. Pokaż liczbę elementów strony w paginacji django
- 7. Co to jest "aplikacja" w Django?
- 8. Co to jest "Menedżer" w django?
- 9. Znacznik warunkowego uwzględnienia w Django
- 10. Django Seler uzyskać liczbę zadań
- 11. if..else niestandardowy znacznik szablonu
- 12. Django: co robi "ładowanie" (w pliku szablonu)?
- 13. Jak liczyć liczbę elementów w zapytaniu bez liczenia()
- 14. Kolejność elementów w zestawie wskaźników
- 15. Znacznik szablonu Django: jak wysłać następną_stronę w {url auth_logout}?
- 16. Aktywny rekord CodeIgniter - Uzyskaj liczbę zwróconych wierszy
- 17. Samouczek Django: Co to jest choice_set?
- 18. uzyskiwanie pierwszego węzła w zestawie wyników Xpath
- 19. Nowość: Django: dodawanie wyników do Queryset przed przekazaniem do szablonu
- 20. Co to jest dobra praktyka do generowania szczegółowych wyników?
- 21. Jak mogę uzyskać obliczone elementy tabeli w zestawie zapytań django?
- 22. Jak uzyskać całkowitą liczbę potencjalnych wyników w Lucene
- 23. Pokrycie testowe szablonu Django
- 24. Co to jest Pagel?
- 25. Co to jest DNVM?
- 26. Niestandardowy znacznik szablonu args i parser kwargs
- 27. aby uzyskać liczbę pól wielowartościowych w solr
- 28. Django niestandardowy znacznik szablonu, który akceptuje parametr boolowski
- 29. Korzystanie z SQlite3 w PHP, jak policzyć liczbę wierszy w zestawie wyników?
- 30. Jak uzyskać dostęp do elementów tablicy w szablonie Django?
'count' będzie prawdopodobnie bardziej efektywny, ponieważ nie musi oceniać całego zestawu zapytań, ale zamiast tego użyje innego zapytania SQL z' count (*) '. –
@Guillaume, właściwie 'length' po prostu wywołuje' len', a Django jest wystarczająco inteligentny, aby zrobić 'count (*)' jeśli queryset nie jest jeszcze oceniony. W rzeczywistości, jeśli zamierzasz iterować to i tak później, 'len' może być * bardziej * efektywny, ponieważ uniemożliwia wykonywanie dwóch wywołań db. –
Dzięki, nie miałem pojęcia, że Django był tak sprytny w kwestii "długości". I oczywiście masz rację co do tego, że 'len' * może * być bardziej wydajny. –