web-dev-qa-db-ja.com

Flask-SQLAlchemy-以上

クエリで「以上」の比較を実行する方法がわかりません。

モデルフィールドがあります。

invoicedate = db.Column(db.Date(), nullable=True, key='InvoiceDate')

そして、私は次のフィルターを実行しようとしています:

Invoice.query.filter_by(invoicedate >= date.today()).count()

ビューを実行すると、次のエラーがスローされ続けます。

NameError: global name 'invoicedate' is not defined

Sqlalchemyまたはflask-sqlalchemyの以上のフィルターの正しい構文は何ですか?

38
Ben Kilah

filter_byではなくfilterが必要です:

Invoice.query.filter(Invoice.invoicedate >= date.today())

filter vs filter_byの詳細については、 この回答 を参照してください

72
DazWorrall