class Group(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Text, unique=True, nullable=False)
user = db.relationship("User", backref="group", cascade="delete")
class User(db.Model):
id = db.Column(db.Integer, primary_key=True)
name = db.Column(db.Text, unique=True, nullable=False)
group_id = db.Column(db.Integer, db.ForeignKey(Group.id, ondelete="CASCADE"), nullable=False)
group_names = ["foo", "bar"]
User.query.filter(User.group.any(Group.name.in_(group_names))).all()
此查询可以过滤至少在User
或foo
组中的bar
。但是,我想查询 BOTH 组中的用户。
有没有办法在SQLAlchemy WITHOUT 中使用for循环创建链或查询?