web-dev-qa-db-ja.com

Flask-SQLAlchemyクエリの結果の数

flaskテンプレート内のクエリからの結果の数を出力する方法を誰かが知っているかどうか疑問に思っていました。

ビューコードの例:

products = Product.query.all()

テンプレートでは、次のことができるようにすると便利です。

{{ products.count() }}

とにかくこれを行うための方法はありますか、またはこれを行うフィルタが記述されている人はいますか?

乾杯、

19
Ben Kilah

productsテンプレート変数は通常のリストです。 lengthフィルターを使用して、そのサイズを取得できます。

_{{ products|length }}
_

ただし、ページ分割された結果を使用している場合は、1ページのサイズになります。クエリ全体のサイズが必要な場合は、クエリオブジェクトでcount()を呼び出す必要があります。例えば:

_product_count = Product.query.count()
_

次に、これを追加の引数としてテンプレートに渡します。または、クエリオブジェクトをテンプレートに渡して、そこからcount()を呼び出すこともできます。

_{{ product_query.count() }}
_
33
Miguel