Djangoの「pre_save」シグナルを次の方法でテストしましたが、どちらの方法でもシグナルをキャッチできません。
$
from django.db.models.signals import pre_save
import logging
def my_callback(sender, **kwargs):
logging.debug("======================================")
pre_save.connect(my_callback)
上記のコードをmanage.pyシェルで実行します。次に、Webサイトを実行して、models.save()が正常に機能することを確認しましたが、コールバック関数が実行されません。
または、シェルで上記のコードを再度実行してから、シェルでmodels.save()を実行します。「保存」は再びうまく機能しますが、それでもコールバック関数には何も起こりません。
最後に、上記のコードをファイルに埋め込み、
__init__.py
Webサイトでsave()関数を実行します。それでも、何も起こりません。
pre_save信号が機能しない理由を理解するのを手伝っていただけませんか。