首页 > 解决方案 > django 项目的通知功能

问题描述

我正在尝试添加通知功能,就像社交网站做的那样:('x 用户添加评论','x 用户喜欢你的帖子'..)等等

我在 django 中搜索此功能的指南以进行跟进,我找到了这个答案“如何使用 django-notification 在有人评论他们的帖子时通知用户 ”,但由于它是 6 年前,一些功能已被弃用并且网页链接已关闭。而且我相信自从 6 年以来 django 社区添加了一些内置功能使这些事情变得更容易。该框架django-notification现在变成了 pinax-notifications,当我阅读它时,它是基于电子邮件通知的——这不是我想要的——。

例如,假设我当前的项目在模型中有 3 个类,如下所示:

class user(models.mode):
.....

class post(models.mode):
user = foreignkey(user)
.....

class comment(models.mode):
user = foreignkey(user)
post = foreignkey(post)
.....

class likse(models.mode):
user = foreignkey(user)
post = foreignkey(post)
comment = foreignkey(comment)
.....

是否有将项目修改为附加通知功能的指南?顺便说一句,我正在开发 django 1.11 和 python 3

标签: djangonotifications

解决方案


在视图中,使用:-

from django.contrib import messages

在A函数里面,添加

errormessage="type error message here"
messages.error(request,errormessage ,extra_tags='alert alert-danger')

extra_tags 是在模板中给类

在模板中

  {% if messages %}
          <ul class="messages">
          {% for message in messages %}
          <li{% if message.tags %} class="{{ message.tags }}"{% endif %}>{{ message }}</li>
          {% endfor %}
          </ul>
  {% endif %}

如需参考,请访问 https://docs.djangoproject.com/en/1.11/ref/contrib/messages/


推荐阅读