Signals 是 Django 对观察者模式的实现——它们让某些 senders 在特定事件发生时通知一组 receivers(比如 model 被保存或删除)。它们启用解耦代码:应用的一部分可以对另一部分的事件做出反应,而无需直接耦合。
常见的内置 signals
text
pre_save / post_save → before / after a model instance is saved
pre_delete / post_delete → before / after a model instance is deleted
m2m_changed → a ManyToMany relationship changed
request_started / finished→ request lifecycle
user_logged_in / out → authentication events
