为什么在Django中使用信号?

圣灵节

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

  • 在Django中使用信号的目的是什么?
  • 它是如何工作的?

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

LadyCoder

Django Signals是一种策略,允许在发生某些事件时通知解耦的应用程序。假设您要在每次更新给定模型实例时使缓存页面无效,但是代码库中有多个地方可以更新此模型。您可以使用信号来执行此操作,并在每次触发该特定模型的save方法时钩住要执行的一些代码。

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

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

为什么在Django中使用SlugField()?

为什么在信号处理程序中使用互斥锁有问题?

请解释为什么我们在音频信号中使用32768

为什么未命名的信号量在共享内存中使用时不会改变?

在Django 1.9中使用信号

谁使用POSIX实时信号,为什么?

为什么使用Sigill信号过早存在?

为什么在不使用weak = False的情况下删除Django信号?

为什么变量不与Django信号中的“实例”一起使用?

为什么在Django中使用线程本地变量不好?

为什么要在Django中使用基本视图?

为什么在 django 项目中使用 mongoDB

为什么我不能在 django 中使用模板标签

为什么我需要在 Django 中使用 SlugField?

为什么以及为什么会使用Boost信号2?

为什么不可能在 Java 中使用 if 语句构建二进制信号量

为什么我的SIGNAL无法在Django中使用-我在做什么错?

我如何在Django批量创建中使用信号

如何在信号中使用Django模型继承?

如何在信号中使用Django模型继承?

在Django应用程序代码建议中使用信号

为什么使用FFT在信号中舍入频率值?

为什么信号功能不能使用信号工作?

为什么信号不发射?

为什么我们在Django视图中使用form.save(commit = False)?

为什么不能在 Django 中使用数字来引用字典

为什么不在生产环境中使用Django提供静态文件?

为什么要在Django中使用预先编写的审核程序包

在Django模型中使用Choices时,为什么要设置max_length?