我在dexterity内容类型中有一些代码,如下所示:
form.fieldset(
'transitionsLog',
label=_(u"Transitions Log"),
fields=['t_log']
)
form.mode(t_log='hidden')
t_log = schema.TextLine(
title=_(u'Transitions log'),
)
在添加/编辑表单中,字段t_log隐藏但字段集选项卡' Transitions Log'仍然在表格中显示,如上所述......
我不知道隐藏" Transitions Log"选项卡添加/编辑表单,
我该怎么办?
答案 0 :(得分:6)
由于字段仍以隐藏模式呈现,因此字段集仍然存在。
如果要完全省略字段集,则需要省略字段集中的所有字段。这可以使用omitted
指令form.omitted
来实现。
form.fieldset(
'transitionsLog',
label=_(u"Transitions Log"),
fields=['t_log']
)
form.omitted('t_log') # This will also omit your fieldset
t_log = schema.TextLine(
title=_(u'Transitions log'),
)
答案 1 :(得分:1)
我找到了一个正确的方法,如下面的自定义添加/编辑表单中的省略字段:
from plone.z3cform.fieldsets.utils import remove
...
def updateWidgets(self):
remove(self, 't_log')
super(CustomEditForm, self).updateWidgets()