开发者社区 问答 正文

为什么在Django中使用信号?

我已经阅读了很多有关在Django中使用信号的文档和文章,但是我不理解这个概念。

  • What is the purpose of using signals in Django?
  • How does it work?

请解释信号的概念以及如何在Django代码中使用它。

问题来源:stackoverflow

展开
收起
is大龙 2020-03-24 18:01:21 481 分享 版权
1 条回答
写回答
取消 提交回答
  • Django Signals是一种策略,允许在发生某些事件时通知解耦的应用程序。假设您要在每次更新给定模型实例时使缓存页面无效,但是代码库中有多个地方可以更新此模型。您可以使用信号来执行此操作,并在每次触发此特定模型的save方法时钩住要执行的一些代码。

    另一个常见用例是通过一对一关系使用Profile策略扩展了Custom Django User。我们通常要做的是使用“信号分配器”来侦听用户的post_save事件,以也更新Profile实例。

    回答来源:stackoverflow

    2020-03-24 18:01:30
    赞同 展开评论
问答分类:
问答标签:
问答地址: