這篇文章主要為大家展示了Django怎么在Model保存前記錄日志,內容簡而易懂,希望大家可以學習一下,學習完之后肯定會有收獲的,下面讓小編帶大家一起來看看吧。
Django中如何在Model保存前做一定的固定操作,比如寫一句日志?
關鍵詞: 信號
利用Django的Model的Signal Dispatcher, 通過django.db.models.signals.pre_save() 方法,在事件發生前,
發射
觸發信號,這一切都被調度中的receiver方法深藏功與名的保存了。
信號的處理一般都寫在Model中,舉個例子:
import logging from django.db import models from django.db.models.signals import pre_save from django.dispatch import receiver class Order(models.Model): # ... logger = logging.getLogger(__name__) @receiver(pre_save, sender=Order) def pre_save_handler(sender, **kwargs): # 我們可以在Order這個Model保存之前盡情調戲了:) logger.debug("{}".format(sender, **kwargs)) print 'fuck universe'
網頁題目:Django怎么在Model保存前記錄日志-創新互聯
URL分享:http://m.kartarina.com/article2/cdcpoc.html
成都網站建設公司_創新互聯,為您提供網站收錄、商城網站、Google、網站設計、品牌網站設計、網站營銷
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯