直接查询关联表对象

2024-05-04 02:25:16 发布

您现在位置:Python中文网/ 问答频道 /正文

我必须直接查询关系,因为我必须分开显示它们。在

task_user = db.Table(
    'pimpy_task_user',
    db.Column('task_id', db.Integer, db.ForeignKey('pimpy_task.id')),
    db.Column('user_id', db.Integer, db.ForeignKey('user.id'))
)

如何在SQLAlchemy中实现这一点? 当我尝试这个:

^{pr2}$

它会导致此错误:

AttributeError: 'Join' object has no attribute 'filter'

Tags: idtaskdbsqlalchemy关系错误tablecolumn
1条回答
网友
1楼 · 发布于 2024-05-04 02:25:16

上面的用法是创建一个join()构造,它是一个核心(非ORM)构造,表示两个表的join()(但不是完整的select())。在

使用ORM时,通常使用Query对象启动SELECT。从类本身进行查询是由flask-sqlalchemy等扩展提供的一种模式,但是这些扩展在这方面通常令人困惑。给定可以使用query对象对其进行查询的任何类或表:

session.query(task_user).join(Task).join(User).filter(Task.group_id == group_id)

相关问题 更多 >