django - 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
解决方案
在视图中,使用:-
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/
推荐阅读
- javascript - 在 Vue.js 2.0 中将 css 类添加到 HTML 或 BODY 标签
- php - 错误消息:调用未定义的方法 CI_DB_mysqli_result::results()
- python - 在方法中的for循环中更改实例属性
- python - 如何使用python selenium单击iframe内的按钮
- css - 计算器屏幕上的大数字扩大了边界
- php - PHP:如何在保留另一个页面的数据的同时重定向到同一页面
- keyboard-shortcuts - iterm2 用于在窗口之间导航的键盘快捷键
- sql-server - 如何根据参数使用不同的“where”子句?
- ruby-on-rails - 基于相对光标的分页在 Shopify api gem 中不起作用
- bash - BASH:我必须循环 20 miljon 文件并验证它们