tabs - net - ¿Cuál es la forma canónica de crear pestañas para un configlet del panel de control?
tablelayoutpanel (1)
Hoy usamos una clase de "proxy de esquema de registro múltiple" para lograr esto, pero creemos que debería haber una mejor manera de trabajar con pestañas en Plone:
https://github.com/collective/collective.nitf/blob/1.x/src/collective/nitf/controlpanel.py#L163-L202
IMO la forma más fácil de crear un configlet con pestañas es usando plone.supermodel :
from my.package import MessageFactory as _
from plone.supermodel import model
from zope import schema
class IMyConfigletSettings(model.Schema):
"""Schema for the control panel form."""
field_one = schema.Text(
title=_(u''Field One''),
default='''',
)
model.fieldset(''tab_a'', label=_(u''Tab A''), fields=[''field_a''])
field_a = schema.Text(
title=_(u''Field A''),
default='''',
)
model.fieldset(''tab_b'', label=_(u''Tab B''), fields=[''field_b''])
field_b = schema.Text(
title=_(u''Field B''),
default='''',
)
Esto creará un configlet con 3 campos y 3 pestañas (un campo por pestaña).
Eche un vistazo al paquete sc.social.like para ver un ejemplo de trabajo real .
Tal vez esto se puede considerar el camino canónico a partir de ahora.