python - Flask SQLAlchemy 查询具有 "not equals"的列

标签 python sqlalchemy flask flask-sqlalchemy

我可以在我的 Seat 表中查询所有未分配邀请的座位:

seats = Seat.query.filter_by(invite=None).all()

但是,当查询分配了邀请的所有席位时,我收到 NameError:

seats = Seat.query.filter_by(invite!=None).all()
NameError: name 'invite' is not defined

这是我的 Seat 类:

class Seat(db.Model):
    id = db.Column(db.Integer, primary_key=True)

    invite_id = db.Column(db.Integer, db.ForeignKey('invite.id'))
    invite = db.relationship('Invite',
        backref=db.backref('folks', lazy='dynamic'))

如何查询所有者不为空的所有席位?

最佳答案

filter_by()方法接受一系列关键字参数,因此您必须始终使用 =

您想使用 filter()允许 !=:

的方法
seats = Seat.query.filter(Seat.invite != None).all()

关于python - Flask SQLAlchemy 查询具有 "not equals"的列,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16093475/

相关文章:

python - lxml - 根据父类获取子类的属性

python - 在 python 中解析 xml

python - 如何在现有对象上显式加载关系?

python - 在现有的 sql 表中创建新列,使用 pandas Dataframe 中的额外列

python - 使用 Flask 和 eventlet 响应并发请求

python - PyYAML 中的数组没有缩进或空格

python - 差异联合与 or 子句

python - 在 SqlAlchemy 中使用模型类类型的数组创建列

python - 长轮询的Ajax无法在网页上显示celery结果

python - 如何在 Flask 应用程序和其他类之间共享记录器实例