跳转到主要内容

提供通过Web编辑zope模式/接口的功能。

项目描述

简介

plone.schemaeditor 提供了一个通过网络的接口来修改 Zope 3 架构(接口)。

目前支持以下功能

  • 添加和删除字段

  • 编辑现有字段的属性

  • 重新排序字段

  • 重命名字段

  • 将字段组织到字段集中

plone.schemaeditor 仅处理实际的架构编辑。为了使其有用,它需要一些集成代码来处理以下部分

  • 遍历到用作编辑器上下文的架构

  • 在 Zope 重启之间持久化架构更改

有关此集成的一种方法,请参阅 plone.app.dexterity(以及 plone.dexterity 和 plone.supermodel)。

以下字段类型(来自 zope.schema)目前受支持

  • 文本行

  • 文本

  • 整型

  • 浮点型

  • 布尔型

  • 密码

  • 日期时间

  • 选择(具有简单的值列表)

  • 选择列表(具有简单的值列表)

第三方包可以通过注册新的 IFieldFactory 工具来提供额外的字段类型。

依赖项

  • Zope 2

  • z3c.form

  • plone.z3cform

尽管命名空间,Plone 并不是依赖项。

注意:此软件包在 BSD 许可下发布。贡献者,请勿添加对 GPL 代码的依赖。

鸣谢

作者

贡献者

  • Nathan Van Gheem

  • Martin Aspeli

  • Alex Limi

  • Ross Patterson

  • Steve McMahon

  • Thomas Desvenain

变更日志

4.0.5 (2023-10-07)

内部

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

4.0.4 (2023-07-14)

错误修复

  • 删除对 plone.app.z3cform 的依赖,该依赖项存在循环。[petschki] (#104)

4.0.3 (2023-03-14)

内部

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

4.0.2 (2023-02-08)

错误修复

  • 声明所有依赖项。[gforcada] (#1)

4.0.1 (2023-01-27)

内部

  • 配置配置文件。[gforcada] (#1)

4.0.0 (2022-12-02)

错误修复

  • Plone 6.0.0 的最终版本 (#600)

4.0.0b2 (2022-08-30)

错误修复

  • 修复在字段集中添加和移动字段的问题。[frapell] (#86)

  • 修复无效字段名的不完整验证错误。根据正则表达式,字段必须以小写字母开头。[maurits] (#93)

  • 测试:在单击按钮添加新内容类型之前暂停。由于在此按钮单击后模态窗口仍然打开,测试失败次数太多。[maurits] (#3582)

4.0.0b1 (2022-06-23)

错误修复

  • 测试:更多的机器人修复。[fredvd, maurits] (#89)

4.0.0a2 (2022-05-14)

错误修复

  • 使其与 robotframework 3-5 兼容。[maurits] (#5)

4.0.0a1 (2022-04-04)

新功能

  • Plone 6 更新 [thet, mauritsvanrees, petschki] (#82)

错误修复

  • 忽略架构列表按钮的验证。[petschki] (#87)

3.0.3 (2021-06-30)

错误修复

  • 使测试“添加具有命名词汇的选择字段”更具鲁棒性。[wesleybl] (#84)

3.0.2 (2020-09-28)

错误修复

  • 修复 ObjectEvent 的弃用警告。[maurits] (#3130)

3.0.1 (2020-06-20)

错误修复

  • 通过 RestAPI 修复 字段 词汇表。[avoinea] (#76)

3.0.0 (2020-04-20)

破坏性更改

  • 从 Plone 4.3 时代开始移除对旧的 collective.z3cform.datetimewidget 的向后兼容性。[jensens] (#74)

错误修复

  • 在机器人测试中使用共享的“Plone 测试设置”和“Plone 测试清理”关键字。[Rotonen] (#66)

  • 修复从 plone.app.z3cform 的损坏导入。这使得它能够与 zope.interface > 5 一起工作。[jensens] (#74)

  • 支持 zope.interface >= 5。[jensens] (#75)

2.1.0 (2019-08-29)

新功能

  • 现在可以通过 UI 删除字段集。(#69)

错误修复

  • 当“必需”字段没有默认值时,不显示错误。还添加了“完成”按钮。(#71)

2.0.20 (2018-09-26)

错误修复

  • 修复将词汇术语序列化为“|”语法失败的问题,当值包含非 ASCII 字符时。[datakurre]

  • 允许通过 Web UI(@@fields)在 dexterity 类型字段上设置默认值。[ezvirtual]

  • 修复 py3 中的测试和一些 py3 问题。[pbauer]

2.0.19 (2018-02-02)

错误修复

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

  • 修复多选题字段获取词汇的问题 [tomgross]

2.0.18 (2017-08-30)

错误修复

2.0.17 (2017-05-23)

新功能

  • 允许在(多)选择字段中指定键|标签形式的词汇,如PFG所示 [tomgross]

2.0.16 (2017-05-10)

新功能

  • 在字段编辑UI中将字段添加到当前选定的字段集中 [thet]

  • 允许在(多)选择字段中以键|标签的形式指定词汇 [tomgross]

  • 移除了非常旧的导入条件 [tomgross]

错误修复

  • 修复Schemaeditor字段编辑UI,使其能够将字段移动到另一个字段集中。修复了:#30。 [thet]

  • 按照样式指南格式化JavaScript。 [thet]

  • 清理:- 从字段编辑UI的JavaScript中删除与Plone 4相关的表单标签选择器。 - 更好的代码复用。 [thet]

2.0.15 (2017-02-12)

错误修复

  • 更干净地实现了绕过设置默认值时的必填项检查,这实际上可行 [tomgross]

  • 使用plone.testing中的测试浏览器以与Zope 4兼容 [davisagli]

2.0.14 (2017-02-05)

错误修复

  • 修复用于重新排序字段的POST AJAX-URL [tomgross]

  • 从Testing.testbrowser导入测试浏览器而不是Products.Five.testbrowser [davisagli]

  • 修复Zope 4的测试设置。 [davisagli]

  • 使用__parent__代替aq_parent。 [davisagli]

2.0.13 (2017-01-01)

错误修复

  • 测试修复:支持最新的zope.i18nmessageid。 [jensens]

2.0.12 (2016-11-09)

错误修复

  • 在Python文件上添加编码头。 [gforcada]

  • 更新代码以遵循Plone样式指南。 [gforcada]

2.0.11 (2016-08-15)

错误修复

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

2.0.10 (2016-06-07)

修复

  • 修复plone.supermodel中字段集排序更改的测试。 [thet]

  • 更新setup.py中的URL,指向GitHub。 [esteele]

2.0.9 (2016-01-08)

修复

  • 移除未使用的locales文件夹,翻译现在位于plone.app.locales中 [vincentfretin]

2.0.8 (2015-12-03)

修复

  • 使用plone域进行翻译。 [gforcada]

2.0.7 (2015-09-07)

  • 将plone.protect.utils.addTokenToUrl作为软依赖项,使得此包可以在Plone < 5.0中使用。 [thet]

2.0.6 (2015-07-18)

  • 在字段添加表单中支持additionalSchemata。 [ebrehault]

2.0.5 (2015-06-05)

  • 添加undeclared zope.cachedescriptors依赖项。 [timo]

  • 修复javascript以重新排序字段。它与mockup jquery.event.(drag|drop)冲突。 [vangheem]

  • 添加对具有i18n Message值的属性的非破坏性编辑支持 [datakurre]

  • 为IFieldFactory添加一个“受保护”的方法,可以用来确定特定字段是否必须不可编辑且不可移动(就像行为字段一样)。在子类中重写它以实现自定义行为。 [ebrehault]

2.0.4 (2015-05-13)

  • 允许隐藏“保存默认值”按钮 [ebrehault]

  • 修复删除方法(它以前返回HTML并产生一个plone.protect警告) [ebrehault]

2.0.3 (2015-05-04)

  • 修复字段名称的翻译和排序。 [MacYET, davisagli]

  • pat-modal模式已重命名为pat-plone-modal [jcbrand]

2.0.2 (2015-03-13)

  • 清理测试设置。这解决了某些严重的测试隔离问题。 [timo]

  • 更新标记和JavaScript以支持Plone 5。 [davisagli]

  • 使字段集创建可选 [ebrehault]

  • 添加CSRF保护令牌 [ebrehault]

2.0.1 (2014-10-23)

  • 修复schemaeditor.js,使其与jQuery 1.9+兼容。 [bloodbare]

  • 国际化删除字段确认消息。 [thomasdesvenain]

  • 我们可以设置字段集描述。 [thomasdesvenain]

  • 我们可以在添加表单中设置字段是必填的还是非必填的。 [thomasdesvenain]

2.0 (2014-04-01)

  • 修复Jenkins上的测试失败。 [timo]

  • 修复测试。 [davisagli]

  • 在列表中,如果提供了SchemaContext标签,则尊重它。否则,根据标题构建一个。这为我们提供了更多的标签灵活性,尤其是在dexterity schemaeditor上下文之外。 [smcmahon]

  • 在生成的删除URL上集成addTokenToUrl from plone.protect.utils。 [Luke Brannon]

  • 向SchemaContext添加fieldsWhichCannotBeDeleted属性,该属性可用于禁止删除某些字段。 [davisagli]

  • 修复EditableSchema的removeField以允许在模式上没有字段集的情况。 [ianderso]

1.3.7 (2014-03-02)

  • 修复打包错误。 [esteele]

1.3.6 (2014-03-02)

  • 使用不同的id为字段编辑表单和列表表单,以便于overlay行为的复用。 [thomasdesvenain]

  • 修复法语翻译。 [thomasdesvenain]

  • 不要依赖popupform.js [davisagli]

1.3.5 (2014-01-27)

  • 为IFieldFactory添加一个“可编辑”方法,可用于确定特定字段是否可编辑。理由:通过XML编辑定制的字段有时可能无法通过schemaeditor进行编辑,因为无法处理自定义词汇或来源。字段工厂实用程序是一个非常方便的测试位置,因为它已经用于确定可用字段及其可添加性。

    在基类中,editable(fieldInstance)返回True。在子类中覆盖它以实现自定义行为。[smcmahon]

  • 为IFieldFactory添加一个“可用”方法,可用于确定字段工厂是否实际上在当前上下文中可用。在基类中,这始终返回True。如果字段工厂只有在满足条件时才有用,则覆盖它。例如:除非在Plone实例中激活relationfield,否则我们无法使用RelationChoice字段工厂。[smcmahon]

  • 修复:在一个具有词汇名称的多选字段中,当字段是从模型生成时,编辑表单中未选择词汇名称。[thomasdesvenain]

1.3.4 (2013-12-07)

  • 修复禁用表单标签时的拖放字段:我们可以将字段拖放到字段集图例中(例如,当字段集为空时),或直接将其定位在新字段集的字段旁边。[thomasdesvenain]

  • i18n修复。[thomasdesvenain]

  • 在设置字段id时,更好地对字段标题进行字符串归一化(将重音或特殊字符与相应的字母一起更改)。[cedricmessiant]

  • 添加了机器人测试。[davisp, cedricmessiant, thomasdesvenain at toulouse-sprint]

  • 我们可以在所有已注册的词汇中为选择字段选择词汇工厂。编辑带有词汇工厂的选择字段时不再出现错误。[thomasdesvenain]

  • 修复从字段集中删除字段。[kroman0]

1.3.3 (2013-08-13)

  • 修复1.3.2中的打包问题。[esteele]

1.3.2 (2013-08-13)

  • 字段集wysiwyg管理。我们可以将字段集添加到模式中。我们可以通过拖放更改字段的字段集。现在,当我们有字段集时,字段重排可以正常工作。[thomasdesvenain]

  • 更新了fr翻译。[thomasdesvenain]

  • 添加了pt_BR翻译。[ericof]

1.3.1 (2013-03-05)

  • 在prepOverlay中用于字段设置的xtags属性样式的jQuery选择器中引用属性值。缺少引用会导致在点击“模式编辑器中的设置”时出现js错误。[smcmahon]

1.3.0 (2013-01-17)

  • 在UI中将“多选”字段选项用于一组选择字段,而不是选择字段列表。后者是可排序的,并且使用情况较少(我们还需要一个更好的小部件)。[davisagli]

  • 通过定义allowedFields属性,使模式上下文能够限制可添加的字段。[davisagli]

  • 添加更具体的当字段添加或删除时的事件。[davisagli]

  • 通过添加许多缺失的字符串来改进i18n。[giacomos]

1.2.1 (2012-08-29)

  • 使用zope.lifecycleevent。[hannosch]

  • 字段编辑表单现在尊重autoform提示。可以通过注册模式上下文和字段到plone.schemaeditor.interfaces.IFieldEditorExtender的适配器来提供其他架构。[davisagli]

1.2.0 - 2012-02-20

  • 在模式预览中显示来自行为的行为字段。[davisagli]

  • 防止用户创建具有为Dublin Core元数据保留的名称的字段。titledescription仍然可以使用,只要字段类型正确。[davisagli]

  • 删除min_length和max_length字段的无用帮助文本。[davisagli]

  • 架构列表预览现在尊重autoform提示(如自定义小部件)。[davisagli]

  • 使新布尔字段默认使用单选按钮小部件。现在,字段在字段类型列表中显示为“是/否”。[davisagli]

  • 隐藏字段的“只读”设置。[davisagli]

  • 从架构列表而不是字段覆盖中编辑字段默认值。这简化了确保默认值不能设置为无效值的过程。[davisagli]

  • 将模式列表中的文本区域高度限制,以避免额外滚动。[davisagli]

  • 在遍历模式上下文时,如果未找到字段则回退到正常遍历。这修复了模式上下文中的表单的行内验证。[davisagli]

  • 通过在模式上下文中指定 schemaEditorView 属性,使得 schemaeditor 不成为模式上下文的默认视图。[davisagli]

  • 添加了西班牙语翻译。[hvelarde]

1.1.2 - 2011-11-26

  • 添加了1.1.1中缺少的 .mo 文件。[davisagli]

1.1.1 - 2011-11-26

  • 添加了国际化,并提取了主要语言的翻译消息。[thomasdesvenain]

  • 添加了法语翻译。[thomasdesvenain]

  • 添加了意大利语翻译。[giacomos]

1.1 - 2011-09-24

  • 避免在扩展字段上的 minmax 属性范围以及输入范围外的 default 时出现错误。[davisagli]

  • 根据字段的词汇验证 Choice 字段的 default 属性的输入。[davisagli]

  • 通过网络删除对字段 missing_value 属性的支持。[davisagli]

  • 添加一个没有时间组件的仅日期字段。[davisagli]

  • 修复了验证字段短名的问题。[davisagli]

1.0.3 - 2011-06-15

  • 修复测试。[davisagli]

1.0.2 - 2011-06-14

1.0.1 - 2011-05-20

1.0 - 2011-04-30

  • 除了在字段添加、编辑和删除时引发的正常对象事件外,还在模式上下文中引发 SchemaModifiedEvent。这大大简化了编写序列化模式更改的代码,并使我们能够跟踪模式来源,以便我们知道在哪里进行序列化。[davisagli]

  • 支持 Choice 字段的词汇中的非 ASCII 字符。[davisagli]

  • 将用于从标题动态设置 ID 的 js 事件从 keyup 更改为 change;自动完成不会引发 keyup 事件,但会触发 change 事件。[smcmahon]

  • jslintify schemaeditor.js [smcmahon]

  • 尊重字段编辑弹出窗口中的取消按钮。[smcmahon]

1.0b2 - 2011-01-22

  • 为我们的固定 IDatetime 尝试添加另一个可能的基类,因为 plone.app.z3cform 可能会更改哪个优先。[davisagli]

  • 默认添加 Textline 字段。[davisagli]

1.0b1 - 2010-04-18

  • 为字段编辑屏幕添加了覆盖支持。[davisagli, limi]

  • 重构 UI 以显示字段的 WYSIWYG 表示形式。[davisagli, limi]

  • 删除了 JavascriptFormWrapper。[davisagli]

  • 主要包清理。[davisagli]

  • 对于 Bool 字段,省略了 'required' 和 'missing_value' 字段。[davisagli]

  • 添加了定义简单 TextLine 值词汇的能力。提供了单选和复选字段。[rossp]

  • 覆盖基字段接口以获取默认和 missing_value 字段的正确字段类型,而不是使用 MetaFieldWidgetFactory。[rossp]

  • 确保新字段的标准 ID 使用 _ 而不是 -,以便无需使用 getattr 即可访问。[davisagli]

  • 修复了在模式中将字段移动到位置 0 的问题。[davisagli]

  • 按字母顺序列出可用的字段类型词汇。[davisagli]

  • 由于 plone.namedfile 提供了更好的文件字段并现在注册了自己的字段工厂,因此不再为 zope.schema.Bytes 提供字段工厂。[davisagli]

  • 修复了字段编辑表单的行内验证。[davisagli]

  • 添加了 ReadOnlySchemaListing 以列出字段而无需使其可编辑。[davisagli]

  • 样式微调 [davisagli]

1.0a2 - 2009-07-12

  • 将API方法和参数改为混合大小写,以与Zope的其他部分保持一致。这是一个不兼容的更改。我们深表歉意,但现在是时候了。:-/

    如果在您的代码中遇到导入错误或未知关键字参数,请将名称从foo_bar更改为fooBar,例如,add_field()变为addField(). [optilude]

1.0a1 - 2009-05-23

  • 首次发布

项目详情


发布历史 发布通知 | RSS订阅

下载文件

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

源分发

plone.schemaeditor-4.0.5.tar.gz (47.1 kB 查看哈希值)

上传时间

构建分发

plone.schemaeditor-4.0.5-py3-none-any.whl (50.6 kB 查看哈希值)

上传时间 Python 3

支持