Django 訊號使用問題

2022-08-03 07:18:07 字數 792 閱讀 6514

這段**應該放在**?

嚴格來說,訊號處理和註冊的**應該放在你想要的任何地方,但是推薦避免放在應用的根模組和models模組中,以儘量減少產生匯入**的***。

方法中連線。 如果你使用receiver()內部匯入signals子模組就可以。

注方法會在測試期間執行多次,所以你可能想要保證訊號不會重複,尤其是打算在測試中傳送它們的情況。

訊號觸發主要需要三個條件:

1.訊號能正常工作

from django.db.models.signals import post_delete

from django.dispatch import receiver

from device.models import device # replace with your model

@receiver(post_delete, sender=device, weak=false)

def delete_comment_after(sender):

print('device delete')

print(sender)

name = 'device'

verbose_name = '裝置'

def ready(self):

import device.signals

......

]

django使用redis問題

專案中開始使用django redis,後來需要用到redis set型別,發現django redis不支援,於是換成python redis包,安裝 pip install redis pip install hiredis 使用 pool redis.connectionpool host l...

django 訊號機制

django包含乙個 訊號分配器 當在框架中其他位置發生操作時,該訊號分配器可幫助通知已分離的應用程式。簡而言之,訊號使某些傳送者可以通知一組接收者已經採取了某些措施。當許多 片段可能對同一事件感興趣時,它們特別有用。django提供了一組內建訊號,這些訊號使django自身可以將某些操作通知給使用...

使用django開發遇到問題

1 建立專案 1.1 安裝django pip install django 1.2 新建目錄learning log 1.2 進入目錄learning log,django admin py startproject learning log 注 後面那個 不能落下 2 python3無法安裝my...