我有一个很长的 portlet 编辑屏幕,所以我想使用字段集对它的字段进行分组(然后可能将它们布局到本机表单选项卡中,就像在内容的编辑视图中使用的那些)。
zope.formlib 有可能吗?
总而言之,Plone 4 的答案确实是使用基于 z3c.form 的 portlet,并通过从 plone.supermodel.model.Schema 继承表单模式并使用 plone.autoform.directives.fieldset 定义字段集来创建字段集:https:// pypi.python.org/pypi/plone.autoform#organizing-fields-into-fieldsets
对它们的支持是在 plone.app.portlets 2.3 中引入的(而在编写过程中最新的 Plone 4 版本是 2.5.1)。
使用以下基于 z3c.form 的 portlet 表单基类而不是 formlib 就足够了:
from plone.app.portlets.browser.z3cformhelper import AddForm
from plone.app.portlets.browser.z3cformhelper import EditForm
还很高兴知道基于 z3c.form 的 portlet 将成为 Plone 5 中的默认值(并且 z3cformhelper 中的基类被设为默认基类)。