0
に私たちはモデルを持っています。 これを行うにはどのような提案がありますか? items_red
モデルインスタンスは変更されません。その後、受信機は、Djangoの信号は、メソッド呼び出し(モデルインスタンスをトリガしない)
import django.dispatch
items_red_executed = django.dispatch.Signal()
class Item(model.Model):
pass
def items_red(self):
# filter items by red color
# model instance is NOT changed (saved)
items_red_executed.send(sender=self.__class__)
::カスタム信号を定義する必要が
説明のために、私は信号をたくさん使っていません。しかし、今私は少しオーバーヘッドを理解し、単に追加のメソッドを作成し、 'items_red'でトリガするでしょう –
私はあなたがそのオーバーヘッドについて心配する必要はないと思っています。DB駆動アプリケーションでは、 DBのパフォーマンス。 – rafalmp
しかし、コードは可能な限り明示的に指定する必要があります。数ヶ月のコーディング後にプロジェクトをサポートしているときに役立ちます –