質問

これは、Djangoの信号を扱うのは初めてであり、私はコメントにフラグが立っている時に私を通知するコメントアプリが提供する「comment_was_flagged」信号をフックしたいと思います。

これは私のコードですが、それが動作するようには思えない、私は何かが足りないのですか?

from django.contrib.comments.signals import comment_was_flagged
from django.core.mail import send_mail

def comment_flagged_notification(sender, **kwargs):
  send_mail('testing moderation', 'testing', 'test@localhost', ['myemail@gmail.com',])

comment_was_flagged.connect(comment_flagged_notification)

(私はちょうど今の電子メールをテストしていますが、私は電子メールが正しく送信されて安心しました。)

ありがとうございます。

役に立ちましたか?

解決

私はあなたがこのsignals.pyモジュール内のコード、または類似した何かを投げてきた推測してます。

あなたはモジュールのコードが実行時に実際に実行なっていることを確認する必要があります。お使いのモデルのモジュールのどれもあなたの信号モジュールをインポートしない場合は、お使いの信号リスナーが接続されて取得されることはありません。

Djangoの信号のドキュメント:

  

...あなたがいることを確認する必要があります   それは早い段階でインポートされる中だモジュール   その信号処理が得ること   いずれかの信号がする必要がある前に登録   送信されます。これは、あなたのアプリのを作ります   置くために良い場所をmodels.pyの   シグナルハンドラの登録ます。

scroll top