Django contrib.messages on steroids
django-stored-messages的Python项目详细描述
django contrib.类固醇信息
该应用程序与django的messages framework顺利集成 (django.contrib.messages),但用户可以决定哪些消息必须存储在数据库中 后端并在会话期间保持可用。
功能
- 与django.contrib.messages 无缝集成 所有的特性都在一个混合中,你可以附加到你现有的存储中。
- 存储的消息存档在数据库或redis实例中
- 用户可以配置必须持久化的消息级别
- 用于检索消息并将其标记为已读的rest api(需要djangorestframework)
- 向API发送信号以执行响应消息活动的操作
兼容性表
- Python2.7、3.4、3.5
- Django 1.8,1.9
- django rest framework>;=3.3(仅当您想使用rest端点时)
您使用django或django rest框架的早期版本吗?甚至可以使用old version of stored_messages 如果不再受支持。无论如何,计划迁移到新版本。
文档
完整的文档位于http://django-stored-messages.rtfd.org。它包括migration instructions如果你 从早期版本的stored_messages迁移。
快速启动
按照指示启动django.contrib.messages, 然后安装应用程序:
$ pip install django-stored-messages
将其添加到已安装的应用程序:
INSTALLED_APPS=(# ...'stored_messages',)
在设置中,告诉django哪个是消息存储:
MESSAGE_STORAGE='stored_messages.storage.PersistentStorage'
最后一步,不要忘记运行django迁移:
$ python manage.py migrate
然后通过django.contrib.Messages API在项目中使用它。应用程序提供了方便 一些默认情况下保持的消息级别:
importstored_messagesfromdjango.contribimportmessages# standard messagemessages.add_message(request,messages.INFO,'Hello world.')# this will be persisted and marked as 'unread'messages.add_message(request,stored_messages.STORED_INFO,'Hello world, to the database!')
存储的_消息也会公开相同的api,因此可以这样做:
importstored_messagesstored_messages.add_message(request,stored_messages.INFO,'Hello!')
如果要使用标准消息级别,但要持久化消息,只需添加以下内容 设置:
fromdjango.contribimportmessagesSTORED_MESSAGES={# persist standard infos and standard errors'STORE_LEVELS':(messages.INFO,messages.ERROR,),}
迭代消息将自动将其标记为已读(但仍保持):
storage=messages.get_messages(request)forunread_messageinstorage:# unread_message could be a stored message or a "standard" Django messagedo_something_with(unread_message)
…除非您将存储器标记为未使用:
storage.used=False
您可以随时将存储的邮件标记为已读:
stored_messages.mark_read(request.user,message)
要将邮件存储在redis而不是数据库中吗?给您:
STORED_MESSAGES={'STORAGE_BACKEND':'stored_messages.backends.RedisBackend','REDIS_URL':'redis://localhost:6379/0',}
历史记录
1.0.1(2014-04-17)
- 修正了inbox get()上的主要错误
- 修复了redis后端消息的收件箱序列化程序
- 增强的测试套件 添加404个描述并返回
1.0.0(2014-04-01)
- 支持redis的新后端架构
- 支持广播消息
0.2.1(2013-12-23)
- 添加了存储的消息数模板标记和测试
0.2.0(2013-10-22)
- 添加了存储的信息存档模板标记
- 扩展rest api
0.1.2(2013-10-13)
- 为存储的消息添加了特定的模板标记
0.1.1(2013-10-10)
- fixed setup.py
0.1.0(2013-10-08)
- pypi上的第一个版本。