试图在 Flask-SQLAlchemy 中使查询不区分大小写

Trying to make a query case insensitive in Flask-SQLAlchemy

如何让这个查询不区分大小写?

result = db.session.query(countries).filter_by(name=country,capital=capital).first()

我正在使用 Flask SQL-顺便提一下炼金术。我可以 db.func.lower() 但我还没有找到在我的行中正确使用它的方法。

你应该使用 filter 而不是 filter_by:

from sqlalchemy import func

result = db.session.query(countries).filter(
   func.lower(countries.name) == name.lower(),
   func.lower(countries.capital) == capital.lower()
).first()

如果 countries 是 table(不是模型),您应该使用 countries.c.name 语法。

相似主题:Case Insensitive Flask-SQLAlchemy Query