SQL Alchemy - 如何从模型实例中删除?

26 投票
2 回答
20314 浏览
提问于 2025-04-16 01:45

假设我得到了一个模型实例,像这样:

instance = session.query(MyModel).filter_by(id=1).first()

我该怎么删除那一行呢?有没有什么特别的方法可以调用?

2 个回答

17

你可以用一个简单的查询来完成这个操作。

如果你想删除所有记录:

session.query(MyModel).delete()
session.commit()

这个操作会把所有记录都删除掉。如果你只想删除特定的记录,可以在查询中使用过滤条件。例如:

如果你想删除特定的值:

session.query(MyModel).filter(MyModel.id==1).delete()
session.commit()
45

好的,我经过进一步的搜索找到了答案:

session.delete(instance)

撰写回答