を用いた場合であっても保存いずれかの二回受信:__init__.py
でPost_saveは、私は、個々のファイルで私のモデルを持っているdispatch_uid
models
\
|__init__.py
|event.py
|a_thing.py
|...
を、私は各モデルをインポートし、その後、私は、信号処理を設定します。
Event
モデルの場合は、post_save
の取り扱いが必要です。
これは__init__.py
の短縮バージョンです:
from django.db.models.signals import post_save
from django.dispatch import receiver
from core.models.event import Event
# Event
@receiver(post_save, sender = Event)
def event_post_save(sender, dispatch_uid = 'nope', **kwargs):
print kwargs.get('created')
print '------'
私はコンソール経由でEvent
を保存するたびにpost_save
のメッセージが一度に印刷されているが、私は管理インタフェースを使用するとき、それは二回印刷します。これは、admin.py
の中にモデルをインポートするためかもしれません。
post_save
を2回起動せずに管理インターフェイスからイベントオブジェクトを保存できるようにするための回避策はありますか?