1

如何设置在提交后对 ZODB 对象更改触发的钩子?我可以为 IObjectWillBeMovedEvent 和 IObjectWillBeAddedEvent 设置处理程序,但这些处理程序会在对象创建时立即触发。是否有其他我可以使用的事件或钩子只有在提交更改时才会触发?

4

1 回答 1

2

Python的事务包不使用zope.event事件通知,并且有自己的系统来注册可调用的钩子。但是,您必须为每个正在运行的事务添加挂钩,您可能会考虑使用 zope.event 在 IObjectModifiedEvent(或类似事件)中执行此操作。

参见ITransaction.addAfterCommitHook () 的描述。

于 2013-03-11T15:47:44.983 回答