在我得蓝图当中我定义了 一个接受者
# -*- coding: utf-8 -*-
from flask_sqlalchemy import models_committed
# flag = True
# if flag:
def on_models_committed(sender, changes):
print u'我是订阅者,我要触发任务'
for obj, change in changes:
if change == 'insert' and hasattr(obj, '__commit_insert__'):
obj.__commit_insert__()
elif change == 'update' and hasattr(obj, '__commit_update__'):
obj.__commit_update__()
elif change == 'delete' and hasattr(obj, '__commit_delete__'):
obj.__commit_delete__()
models_committed.connect(on_models_committed)
然后哦在create_app 当中的__init__.py 导入了我蓝图中的这个方法
在models.py 中定义了__commit_update__()方法来执行处理逻辑
但是现在信号无法触发,求问哪里出错了?
加上以上修改能夠正確的捕捉到信號的觸發了, 但是不知道原理是啥? query物件的刪除,和model物件的刪除的等級問題麼, 內建訊號是基於db 這一層等級的嗎?