跳转到主要内容

为Zope提供表单生成和验证库

项目描述

zope.formlib

https://github.com/zopefoundation/zope.formlib/actions/workflows/tests.yml/badge.svg Documentation Status

表单是使用小部件显示和输入数据的网络组件。通常,模板通过访问底层类上的属性或方法来显示小部件。

文档托管在 https://zopeformlib.readthedocs.io/en/latest/

更改

6.0 (2023-03-27)

  • 添加对Python 3.11的支持。

  • 放弃对Python 2.7、3.5、3.6的支持。

5.0.1 (2021-10-25)

  • 添加对Python 3.10的支持。

5.0.0 (2021-10-25)

可能破坏性的更改

  • 修复字段内容约束的检查。现在正式允许prefix为空,并允许点。请参阅pull request 35

特性

  • 添加对Python 3.9的支持。

其他更改

  • 删除未使用的非BBB导入。

  • 调整复选框小部件测试,以符合布尔字段上required的新默认值。

4.7.1 (2020-03-31)

  • 确保所有对象具有一致的接口解析顺序。请参阅问题30

  • 移除对已弃用的python setup.py test命令的支持。

4.7.0 (2020-02-27)

  • 将包含“<”、“>”或“&”的行内JavaScript函数定义移入外部文件,以遵循有关XML/HTML兼容性的XHTML推荐(#25

  • 添加对Python 3.8的支持。

  • 取消对Python 3.4的支持。

4.6.0 (2019-02-12)

  • 添加对Python 3.7的支持。

  • 使测试与zope.i18n >= 4.5兼容。

4.5.0 (2018-09-27)

4.4.0 (2017-08-15)

  • 添加对Python 3.5和3.6的支持。

  • 取消对Python 2.6和3.3的支持。

  • 在Python 2和3中将默认编码设置为UTF-8,以便在将字节转换为unicode时使用。

4.3.0 (2014-12-24)

  • 添加对PyPy的支持。(PyPy3等待修复https://bitbucket.org/pypy/pypy/issue/1946的问题)

  • 添加对Python 3.4的支持。

  • 添加在Travis上测试的支持。

  • 显式隐藏orderedSelectionList.pt中的span。此span只包含隐藏的输入,但Internet Explorer 10仍然显示了它们。

  • 支持CSRF保护。

  • 为表单提交添加了限制可接受请求方法的支持。

4.3.0a1(2013-02-27)

  • 添加了对Python 3.3的支持。

4.2.1 (2013-02-22)

  • BooleanDisplayWidget的默认值从模块移动到类定义中,以便在实例中更改它们。

4.2.0 (2012-11-27)

  • LP #1017884:将防止表单渲染的重新定向状态码(303、307)添加到集合中。

  • 将已弃用的zope.component.adapts用法替换为等效的zope.component.adapter装饰器。

  • 将已弃用的zope.interface.implements用法替换为等效的zope.interface.implementer装饰器。

  • 取消对Python 2.5的支持。

  • 使SourceSequenceDisplayWidget的分隔符可配置。

4.1.1 (2012-03-16)

  • 为表单类添加了ignoreContext属性,以控制是否在检查接口不变性时将表单的上下文考虑在内。

    默认情况下,ignoreContext设置为False。在AddForm中默认设置为True,因为此表单的上下文自然不适合作为接口不变性的上下文。

4.1.0 (2012-03-15)

  • checkInvariants现在在检查接口不变性时考虑表单的上下文。

  • 测试不再与Python 2.4兼容。

4.0.6 (2011-08-20)

  • 修复了orderedSelectionList.pt模板中的错误。

4.0.5 (2010-09-16)

  • 修复了Action名称参数的处理,自4.0.3以来,所有通过的名字都被转换为小写。

4.0.4 (2010-07-06)

  • 修复了在Python 2.7下通过测试。

  • 修复了orderedSelectionList.pt中的“multiple”属性验证。

4.0.3 (2010-05-06)

  • 当传递Unicode标签时,防止Action引发异常[LP:528468]。

  • 改进了可选选择字段“没有选择”的情况的显示[LP:269782]。

  • 改进了ItemDisplayWidget的真相测试[LP:159232]。

  • 如果在标记转换期间引发TypeError,则不会崩溃[LP:98491]。

4.0.2 (2010-03-07)

  • 对Python 2.4进行了测试适配(强制对简短的pprint输出进行排序)

4.0.1 (2010-02-21)

  • 现在上传到PyPI的文档包含小部件文档。

  • 转义MultiCheckBoxWidget的内容[LP:302427]。

4.0 (2010-01-08)

  • 将小部件实现和zope.app.form的所有小部件移动到zope.formlib中,打破了zope.formlib对zope.app.form的依赖关系(现在zope.app.form依赖于zope.formlib)。

    所有小部件都可以从zope.formlib.widgets导入。

    小部件基类和渲染功能在zope.formlib.widget中。

    所有相关的小部件接口现在都在 zope.formlib.interfaces 中。

3.10.0 (2009-12-22)

  • 优先使用来自 zope.browserpage 的命名模板,而不是 zope.app.pagetemplate。

3.9.0 (2009-12-22)

  • 使用 zope.browserpage 的 ViewPageTemplateFile。

3.8.0 (2009-12-22)

  • 调整测试输出以适应新的 zope.schema 版本。

3.7.0 (2009-12-18)

  • 摆脱 zope.app 测试依赖。

  • 修复:按钮标签需要转义

3.6.0 (2009-05-18)

  • 删除已过时的导入。

  • 删除对 zope.app.container 的依赖(使用来自 zope.browser.interfacesIAdding)。依赖 zope.browser>=1.1(包含 IAdding 的版本)。

  • namedtemplate 移动到 zope.app.pagetemplate,以减少使用此功能时对 zope.formlib 的依赖。在此处留下 BBB 导入。

3.5.2 (2009-02-21)

  • 适配 Python 2.5 输出的测试。

3.5.1 (2009-01-31)

  • 适配即将发布的 zope.schema 版本 3.5.1。

3.5.0 (2009-01-26)

新功能

  • 现在在 test 额外声明测试依赖。

  • 引入了 zope.formlib.form.applyData,它的工作方式类似于 applyChanges,但返回一个包含有关哪个模式的哪个属性已更改的信息的字典。然后,将此信息与 IObjectModifiedEvent 一起发送。

    这修复了 https://bugs.launchpad.net/zope3/+bug/98483

已修复的 Bug

  • 导致重定向(301、302)的操作不再调用 render 方法。

  • zope.formlib.form.Action 类没有完全实现 zope.formlib.interfaces.IAction。

  • zope.formlib.form.setupWidgets 和 zope.formlib.form.setupEditWidgets 在适配器上没有检查写入权限,而是在上下文上检查。这修复了 https://bugs.launchpad.net/zope3/+bug/219948

3.4.0 (2007-09-28)

自 3.4.0a1 以来没有进一步更改。

3.4.0a1(2007-04-22)

作为独立项目首次发布,对应于 Zope 3.4.0a1 中的 zope.formlib

支持者