我在sqlalchemy-project中有一个event-listener,我希望在保存目标和另一个值之后运行它。
@event.listens_for(Component.name, 'set')
def do_things(target, value, oldvalue, initiator):
print(target.someOtherValue)现在,target.someOtherValue只是有时会保存新值(表示存在计时问题?)。
如何确保在保存新值后始终运行函数?
发布于 2018-04-23 22:33:58
也有类似的问题,但通过'before_update‘事件解决了这个问题。希望它也适用于你。
@event.listens_for(SomeClass, 'before_update')
def receive_before_update(mapper, connection, target):
"listen for the 'before_update' event"
# ... (event handling logic) ...注意:确保not在您的SomeClass对象上添加.name。使用target.yourclassproperty引用特定于特定类的属性。
阅读有关Sqlalchemy's Mapper Events的更多信息
https://stackoverflow.com/questions/44155718
复制相似问题