代表来自不同的Django应用

时间:2015-05-07 15:01:40

标签: django python-3.x django-views

假设我有两个Django应用,abcxyzabc应用是应使用pip3安装的软件包,xyz是使用abc功能的自定义应用。

xyz如何在abc的视图中提供委托方法?假设abc需要发送消息,它不关心是否应该通过短信,电子邮件或鸟类运营商发送,因此如果xyz可以提供委托方法,则可以从abc调用此方法{1}},没有abc关注实施。

Python可以顺利处理代理,但如何在Django视图中连接它?

我知道我可以使用消息队列或回调网址,但对我来说似乎有点奇怪,没有更简单的方法可以做到这一点。

1 个答案:

答案 0 :(得分:0)

Signals可以帮助您实现所需的目标。

来自Django关于这个主题的文档:

  

Django包含一个“信号调度程序”,它有助于在框架中的其他位置发生操作时通知解耦应用程序。简而言之,信号允许某些发送者通知一组接收器已经发生了某些动作。当许多代码可能对同一事件感兴趣时,它们特别有用。

以下是有关该主题的其他一些资源: