Сигналы - очень полезная часть Django, но мне сложно определить, когда они действительно необходимы. Возьмем следующий пример ambiguious:Django определяет, нужны ли сигналы
class FooBar(models.Model):
some_field = models.something(#...)
def func(self):
# do something
signals.some_signal.send(#...)
так что это будет посылать сигнал всякий раз, когда метод func
называется. Но можно также сделать следующее:
def func(self):
# do something
# do what was in the receiver function
Существует ли какая-либо классификация, когда использовать сигнал, а когда просто включить его в исходном местоположении? Кажется, что большинство ситуаций будет работать в обоих направлениях ... сигналы являются более оптимальными? Подробное объяснение - это то, что я ищу. Заранее спасибо!