4

我正在考虑在我的应用程序中实现一些电子邮件通知。Django-notification 或 Django-mailer 看起来都很合适。
我正在阅读文档并试图弄清楚它们是如何协同工作的。

来自文档: http ://code.google.com/p/django-mailer/#Sample_Use_Cases

django-mailer 不应该管理对事件的实际订阅。考虑“对留言板线程的新回复”用例。整个站点需要跟踪哪些用户订阅了哪些线程,然后当一个线程更新时,django-mailer 将被要求向该用户列表发送相同的消息。但是django-notification应用程序应该跟踪哪些用户订阅了哪些线程和类似的用例。

鉴于这种情况,我不明白最后一行。你如何使用 django-notification 来跟踪哪些用户订阅了哪些线程?
django-notification 的 api
https://github.com/jtauber/django-notification/blob/master/docs/usage.txt

看起来你可以使用 django-notification 来
定义通知类型
- 执行 send_now、queue 和 send 等操作

但这里没有任何内容表明我将如何在所描述的用例中订阅用户。
其次,在所描述的场景中,django mailer 是如何知道要发送什么的?它会重用通知应用程序中的定义吗?看起来邮件程序和通知都实现了“发送”功能....

谁能帮助我更好地理解这一点?

4

1 回答 1

2

Django 通知旨在允许用户确定如何通知他们不同类型的“事件”。例如,当新用户加入站点时,“注册”应用程序可以生成通知并将其发送给站点的所有用户。然后根据每个用户的通知设置(哪些用户可以更改),通知系统将选择如何将该通知传递给特定用户。它可以通过电子邮件、短信(需要扩展通知系统)或仅在网站本身上发送。通常,当运行 syncdb 时,各种应用程序(如注册应用程序)会创建它们将使用的唯一通知类型。例如,注册可以同时具有“新用户”和“用户停用”两种通知类型。

django-mailer 只是一个发送电子邮件的系统。它可以被任何应用程序使用。django-notification 应用程序可以使用它来发送电子邮件,或者“注册”应用程序可以使用它来发送确认电子邮件(不会通过通知系统)。

在我看来,如果你有一个论坛应用程序,它会跟踪哪些用户订阅了哪些论坛,并相应地生成通知。一个评论应用。将跟踪哪些用户评论了哪些项目并相应地向用户生成通知。所以要重申。“个人”应用程序会生成通知。通知应用程序根据个人设置发送通知。邮件程序处理电子邮件的发送(可能由通知应用程序生成,也可能不生成)。

于 2011-12-22T16:05:35.253 回答