在 flask-sqlalchemy 上使用多个值进行过滤

filter with more than one value on flask-sqlalchemy

我想要一个具有多个值的查询,例如 where id in (3,4,5)

然后我有一个 my_list = [3,4,5] 那么如何将该列表作为参数传递给 sqlalchemy 中的过滤器?

query = Notification.query.filter_by(id=my_list).all()

使用 in_filter:

query = Notification.query.filter(Notification.id.in_(my_list)).all()

这是相关的SO Q&A, and Read the Doc from sqlalchemy

如果 Notification 有一个 JSON 字段,例如数据,是否有类似的语法来检查列表,例如:

query = Notification.query.filter(Notification.data['key'].in_(my_list)).all()