跳转到主要内容

statusmessages通过一个浏览器请求适配器提供了一种简单的方式来处理国际化状态信息,状态信息存储在客户端cookies中。

项目描述

介绍

statusmessages通过一个浏览器请求适配器提供了一种简单的方式来处理国际化状态信息,状态信息存储在客户端cookies中。

编写状态消息并将其显示给用户在执行某些操作后是非常常见的。当然,这些消息应该是国际化的。由于这些消息通常在Python代码中定义,因此在Zope中国际化这些消息的常见方法是使用zope.i18n Messages。消息是复杂的对象,由一个翻译域和默认的Unicode文本组成,可能还有额外的映射字典和一个唯一的ID。

在CMF/Plone中提供状态消息的常用方法是在URL中添加“?portal_status_messages=some%20text”。虽然这有一些可用性问题,但它也不能以常规方式国际化,因为URL目前仅限于ASCII字符集,但需要一个支持完整Unicode范围的编码。

此模块提供的解决方案是将状态消息存储在cookie中。在1.x版本中使用了类似服务器端会话的存储,但这对于常规的Web缓存策略来说并不利于缓存。

变更日志

5.0.6 (2023-07-14)

内部

  • 更新配置文件。[plone开发者] (cc314a2b)

5.0.5 (2020-04-23)

错误修复

  • 小版本打包更新。(编号1)

5.0.4 (2018-09-23)

错误修复

  • 在测试中使用Umlaut ä以检查字符串/字节处理。重构test_encoding为unittest。[jensens]

5.0.3 (2018-06-21)

错误修复

  • Python 3兼容性修复。[pbauer]

5.0.2 (2018-02-05)

新功能

  • 添加Python 2/3兼容性。[davilima6]

5.0.1 (2017-11-26)

错误修复

  • 修复编码和解码状态消息到cookie时引发异常的问题,因为TypeError: Struct()参数1必须是字符串,而不是unicode [datakurre]

5.0 (2017-08-04)

重大变更

  • 删除python 2.6(以及Plone 4.3.x)兼容性。[tomgross]

新功能

  • Python 3兼容性[tomgross]

错误修复

  • 更新代码以遵循Plone风格指南。[gforcada]

4.1.2 (2017-02-12)

错误修复

  • 修复测试中的过时导入。[pbauer]

4.1.1 (2016-08-11)

错误修复

  • 使用zope.interface装饰器。[gforcada]

4.1.0 (2016-05-25)

新功能

  • 将测试转换为plone.app.testing。[do3cc]

4.0 - 2010-07-18

  • 使用标准库doctest模块。[hannosch]

4.0b1 - 2010-03-01

  • 如果发送重定向(301、302)或未修改(304)响应,则停止cookie过期。这意味着如果您设置了重定向然后(多余地)渲染一个会显示状态消息的模板,您将不会丢失消息。[optilude]

4.0a2 - 2009-12-17

  • 将新消息的默认类型从空字符串更改为info。[hannosch]

4.0a1 - 2009-12-17

  • 简化了接口以使用更简单的add/show方法名称,同时保持向后兼容。[hannosch]

  • 更多的代码简化。使代码本身独立于Zope2。[hannosch]

  • 删除了five:implements语句,因为在Zope 2.12中ZPublisher.HTTPRequest始终是IBrowserRequest。[hannosch]

  • 此版本依赖于Zope 2.12+。[hannosch]

  • 包元数据清理。[hannosch]

  • 声明包和测试依赖关系。[hannosch]

3.0.3 - 2007-11-24

  • 使用 binascii.b2a_base64 代替 base64.encodestring;前者不会每76个字符插入换行符,这使得只删除最后一个更简单(稍微更快)。这修复了问题 #7323 和 #7325。[mj]

3.0.2 - 2007-11-06

3.0.1 - 2007-10-07

  • 为此包添加了对请求的 IAttributeAnnotatable 接口分配,以及 zope.annotation 的包含,因为我们依赖它。[hannosch]

3.0 - 2007-08-09

  • 没有更改。[hannosch]

3.0rc1 - 2007-07-10

  • 删除了无用的 setup.cfg。[hannosch]

3.0b2 - 2007-03-23

  • 修复了重复消息的bug。向最终用户显示相同的消息多次没有任何意义。这关闭了[http://dev.plone.org/plone/ticket/6109]。[hannosch]

  • 添加了对 statusmessages 的 's 支持,无需重定向。这使用请求上的注释而不是直接值,因此我们避免了通过查询字符串偷偷将这些值包含在内的可能性。[tomster, hannosch]

3.0b1 - 2007-03-05

  • 将其转换为 Products 命名空间中的包。[hannosch]

  • 在将状态消息存储到cookie之前,对状态消息进行了显式翻译。这确保了我们有一个合理的上下文来基于它进行翻译。[hannosch]

  • 将许可证更改为 BSD,以便将其作为依赖项包含在 Archetypes 中。[hannosch]

2.1 - 2006-10-25

  • 更新了测试基础设施,删除了自定义测试运行器。[hannosch]

  • 修复了 zcml 内容指令的弃用警告。[hannosch]

2.0 - 2006-05-15

  • 使用 cookie 而不是服务器端内存存储来存储状态消息,完全重新实现。这种变化背后的理由是,前者方法与 Web 缓存策略不兼容,并在 ZEO 环境中增加了额外的负担(需要使用能够识别用户并将他们连接到同一 ZEO 服务器的负载均衡器)。[hannosch]

1.1 - 2006-02-13

  • 为 ThreadSafeDict 添加了测试。[hannosch]

  • 修复了严重的内存泄漏并进行了某些代码改进。[hannosch, alecm]

1.0 - 2006-01-26

  • 初始实现 [hannosch]

项目详情


下载文件

下载适合您平台的文件。如果您不确定要选择哪个,请了解有关安装包的更多信息。

源分发

Products.statusmessages-5.0.6.tar.gz (15.0 kB 查看哈希值)

上传时间

构建分发

Products.statusmessages-5.0.6-py3-none-any.whl (11.8 kB 查看散列)

上传时间: Python 3

支持