SQLAlchemy:将删除/更新与连接查询一起使用

时间:2015-08-18 14:49:48

标签: python database flask sqlalchemy flask-sqlalchemy

使用Flask-SQLAlchemy,我想根据链接到表Questions的另一个表的值删除表Topic中的行,然后将表Subject链接到表db.session.query(Questions).join(Topic)join(Subject).filter(Subject.account_id==current_user.id).delete() 外键。我试过这个问题:

InvalidRequestError: Can't call Query.update() or Query.delete() when join(), outerjoin(), select_from(), or from_self() has been called

但是,我收到错误:

.delete()

因此,我想我不能将.join()class WorkoutsTableViewController: UITableViewController, UIPageViewControllerDataSource {

一起使用

此问题是否有解决方法?感谢。

1 个答案:

答案 0 :(得分:1)

您不必使用联接查询,您可能会以某种方式完成

db.session.query(Post).filter(Post.user_id==current_user.id).delete()

假设您的帖子有一个user_id列。

连接表不知道要删除哪个表,Post或User,因为它实际上构造了一个复杂的中间表,并从中进行查询。