av一区二区在线观看_亚洲男人的天堂网站_日韩亚洲视频_在线成人免费_欧美日韩精品免费观看视频_久草视

您的位置:首頁技術文章
文章詳情頁

python - flask sqlalchemy signals 無法觸發

瀏覽:171日期:2022-08-18 11:01:22

問題描述

在我得藍圖當中我定義了 一個接受者

# -*- 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__()方法來執行處理邏輯

但是現在信號無法觸發,求問哪里出錯了?

問題解答

回答1:

問題解決方式db.session.query(ClassModel).filter( ClassModel.id == ids).delete()修改成db.session.query(ClassModel).filter( ClassModel.id == ids).first().delete()classModel(db.Model): .....def delete(self):db.session.delete(self)db.session.commit()

加上以上修改能夠正確的捕捉到信號的觸發了, 但是不知道原理是啥? query對象的刪除,和model對象的刪除的級別問題么, 內置信號是基于db 這一層級別的嗎?

標簽: Python 編程
相關文章:
主站蜘蛛池模板: 精品真实国产乱文在线 | 国产一区久久 | 伊人网综合 | 在线观看免费黄色片 | 欧美成人手机视频 | 国产成人免费视频 | 色综合激情 | 成人在线中文字幕 | 黑人巨大精品欧美黑白配亚洲 | 综合中文字幕 | 日韩免费一区二区 | 福利网址| 99热这里都是精品 | 三级av网址 | 中文字幕在线精品 | 国产一二区免费视频 | 国产一区欧美 | wwww.8888久久爱站网 | 亚洲精品久久久久中文字幕欢迎你 | 国产欧美久久一区二区三区 | 国产精品久久久久久久久久久久 | 国产成人精品一区二区三区在线 | 91麻豆精品一区二区三区 | 亚洲人成在线播放 | 欧美日韩视频在线第一区 | 日韩精品影院 | 狠狠躁躁夜夜躁波多野结依 | 精品九九九 | 99精品久久| 色在线免费视频 | 欧美一区免费 | 欧美国产亚洲一区二区 | 国产精品久久久久久久午夜片 | 中文字幕亚洲精品 | 中文字幕国产视频 | 欧美手机在线 | 欧美电影免费观看 | 久久久91精品国产一区二区精品 | 国产高清一区二区三区 | 黄色一级在线播放 | 久久精品国产一区二区电影 |