16
モジュール関数(Djangoビュー関数が発生した場合)からSignalを送信した場合、それはClass内ではありませんが、送信者が何をすべきかはわかりません。この場合、sender=None
は適切ですか?関数からPythonの 'Signal'オブジェクトを送信した場合、「送信者」引数はどのようなものになりますか?
また、この関数はHTTP要求によって呼び出されます。これは、現在別の引数として渡されています。代わりに渡す必要がありますか?
オプションA:
from django.dispatch import Signal
my_signal = Signal(
providing_args=['my_arg', 'request']
)
# this is a view function
def do_something(request):
# ... do useful stuff
my_signal.send(
sender=None,
my_arg="Hello",
request=request
)
オプションB:
from django.dispatch import Signal
my_signal = Signal(
providing_args=['my_arg']
)
# this is a view function
def do_something(request):
# ... do useful stuff
my_signal.send(
sender=request,
my_arg="Hello",
)
[UPDATE]
オプションAがそれを持っています。この場合、受信者が送信者にできることは何もない(つまり、オブジェクトではない)ので、Noneに設定してください。
"The sender to which the receiver should respond. Must either be
of type Signal, or None to receive events from any sender"
、I:
送信者=なしです。 –