Python SQLAlchemy如何在过滤器上使用或

Python SQLAlchemy如何在过滤器上使用或,python,sqlalchemy,Python,Sqlalchemy,我正在尝试对此查询使用OR: User.query.filter(or_(username==data['username'], email==data['email'])).first() 但是,我得到了这个信息: 全局名称“或”未定义 我正在使用SqlAlchemy 0.9.7(它已经包括) 以前有人遇到过这种情况,并且/或者知道如何修复它吗?很可能您没有导入必要的模块 from sqlalchemy import or_ 另外,我不确定这个操作符是否可以与过滤器一起使用。但是试试这种方

我正在尝试对此查询使用OR:

User.query.filter(or_(username==data['username'], email==data['email'])).first()
但是,我得到了这个信息:

全局名称“或”未定义

我正在使用SqlAlchemy 0.9.7(它已经包括)


以前有人遇到过这种情况,并且/或者知道如何修复它吗?

很可能您没有导入必要的模块

from sqlalchemy import or_
另外,我不确定这个操作符是否可以与过滤器一起使用。但是试试这种方法

or|()连词也可以使用Python |运算符使用(不过请注意,复合表达式需要加括号才能使用Python运算符的优先行为):


您是从sqlalchemy.sql.expression导入还是?
导入flask.ext.sqlalchemy
@thaavik单独导入该方法修复了该问题。这是如何“脱离主题”的?单独导入该方法修复了该问题,尽管我不知道为什么它不会包含在整个库中。
User.query.filter((username==data['username']) | (email==data['email'])).first()