2014-02-07 65 views
1

所以創建信號時,我們做了signals.py文件,看起來這樣的:Django的自定義信號

from django.dispatch import Signal 

some_signal = Signal(providing_args=["arg_1","arg_2",...,"arg_n"]) 
#... 

現在我的問題是,如果你要提供的參數並不總是會成爲什麼相同? 你會如何創建一個具有這種靈活性的信號?

回答

3

如果read the documentation:

所有信號都是django.dispatch.Signal實例。 offering_args是信號提供給聽衆的參數名稱列表。 然而,這純粹是文檔化的,因爲沒有任何東西可以檢查信號是否真的爲聽衆提供了這些參數。

,如果你看一下簽名爲send方法:

Signal.send(發件人,** kwargs)

,你會發現,它只是需要一個單一的參數和無論你想要多少關鍵字參數,所以你可以發送儘可能多的東西,只要你喜歡你的信號聽衆

+0

我不能相信我錯過了,當我通過文件塔季翁。非常感謝! –