Flask-SQLAlchemy Anzahl der Ergebnisse in der Abfrage
-
21-12-2019 - |
Frage
Ich habe mich gefragt, ob jemand weiß, wie man die Anzahl der Ergebnisse einer Abfrage in einer Flaschenvorlage ausgibt.
Beispiel-Ansichtscode:
products = Product.query.all()
In der Vorlage wäre es praktisch, einfach Folgendes tun zu können:
{{ products.count() }}
Gibt es eine Möglichkeit, dies bereits zu tun, oder hat jemand einen Filter geschrieben, der dies tut?
Prost,
Lösung
Dein products
Die Vorlagenvariable ist eine reguläre Liste.Du kannst den ... benutzen length
Filtern, um seine Größe zu ermitteln:
{{ products|length }}
Wenn Sie jedoch mit paginierten Ergebnissen arbeiten, erhalten Sie die Größe einer Seite.Wenn Sie die Größe der gesamten Abfrage wünschen, müssen Sie anrufen count()
auf dem Abfrageobjekt.Zum Beispiel:
product_count = Product.query.count()
Übergeben Sie dies dann als zusätzliches Argument an die Vorlage.Wenn Sie möchten, können Sie das Abfrageobjekt auch an die Vorlage übergeben und aufrufen count()
von dort:
{{ product_query.count() }}
Andere Tipps
Sie können verwenden len(products)
Es ist Standart Python -Funktion und funktioniert für mich