Flask-SQLALchemy动态的filter_by和filter

1.filter_by

filter_by用于查询简单的列名,不支持比较运算符。

1
2
filters = {’name': ‘fengyao', ‘age': 26}
User.query.filter_by(**filters).first()

2.filter

比filterby的功能更强大,支持比较运算符,支持or、in_等语法。

1
2
3
4
5
filters = {
User.name == ‘fengyao’,
User.age > 25
}
User.query.filter(*filters).first()

参考:
1.SQLALchemy dynamic filter_by