我正在使用烧瓶和sqlalchemy扩展。此外,我使用声明方式编写我的模型,如扩展文档中所述。
对于我的一个模型,我有一些代码,我需要在插入,更新或删除新行后运行。我想知道怎么做?理想情况下,我只是将函数添加到模型中..
由于
答案 0 :(得分:18)
查看SQLAlchemy的Mapper Events。您可以将回调函数绑定到after_insert
,after_update
和after_delete
事件。
示例:
from sqlalchemy import event
def after_insert_listener(mapper, connection, target):
# 'target' is the inserted object
print(target.id_user)
event.listen(User, 'after_insert', after_insert_listener)