我正在django項目中工作。我有1個postgresql sql文件需要在db創建後只運行一次。內置Django信號不太適合我的情況。所以我嘗試編寫自定義django信號,但我不確定如何從這種情況開始。有沒有人有一個很好的指導。 ? :)如何從django捕獲創建db信號
1
A
回答
1
Django docs on signals已經大幅改善,所以如果你還沒有看看那裏。這個過程非常簡單。
首先創建你的信號(providing_args
,您可以指定將獲得通過的參數,當你以後把你的信號):
import django.dispatch
my_signal = django.dispatch.Signal(providing_args=["first_arg", "second_arg"])
其次,創建一個接收器功能:
from django.dispatch import receiver
@receiver(my_signal)
def my_callback(sender, first_arg, second_arg, **kwargs):
# do something
最後,在您的代碼中發送您的信號(self
,因爲發件人只適用於您的模型類別,否則只需傳遞模型類名稱):
my_signal.send(sender=self, first_arg='foo', second_arg='bar')
+0
由於他有一次性使用情況,您還應該指出他有關創建Command的文檔,以便他可以根據需要生成信號。 –
相關問題
- 1. 如何從Q(雙)spinbox捕獲信號
- 2. 如何捕獲鏽信號
- 3. 如何獲取信號捕獲SIGABRT
- 4. Golang捕獲信號
- 5. 如何中斷epoll_pwait捕獲信號
- 6. 如何在PowerShell中捕獲信號?
- 7. NAudio如何捕獲播放的信號
- 8. 如何捕獲語法錯誤信號
- 9. posix_memalign是否捕獲信號?
- 10. 捕獲SIGVTALRM信號,cp
- 11. 捕獲傳入的信號
- 12. 在linux中捕獲信號
- 13. Android:捕獲SIGSEGV信號JNI
- 14. 如何從QAudioInput捕獲兩個通道的音頻信號
- 15. 如何從無線路由器捕獲原始信號?
- 16. Django信號。如何創建一個獨特的調度ID?
- 17. Django:如何「擴展」使用信號創建組?
- 18. 在星號中捕獲反向信號
- 19. 如何從特定的django信號接收器獲得結果?
- 20. 如何斷開django信號?
- 21. Django信號如何工作?
- 22. 如何從sqlite db創建EER模型
- 23. Ionic2:如何從Modal組件(從ModalController創建)捕獲事件?
- 24. 爲用戶詳細信息創建django信號更新
- 25. Django:從不同型號創建表格
- 26. (Qt)從QButtonGroup的PushButtons創建信號?
- 27. 如何捕獲「行」號碼
- 28. 如何從QNetworkAccessManager :: networkAccessibleChanged()獲取信號?
- 29. 如何從FFT上獲取MFCC信號?
- 30. 從UIWebView捕獲信息
最初的SQL數據鉤子不適合你嗎? –
我不確定這種方法。但我需要它只運行一次。它會按我的預期工作嗎? – vernomcrp