Noe Nieto

Mi sitio personal | Personal site

Registrar un viewlet en Plone con 11 líneas de código

Cómo registrar un viewlet en Plone usando five.grok con solo 11 líneas de código, simplificando el desarrollo.

Me grok smash ZCML!

Una vez que se ha configurado five.grok, se puede añadir un viewlet con solo 11 líneas de código:

from zope.interface import Interface
from five import grok
from plone.app.layout.viewlets.interfaces import IPortalHeader


class Portrait(grok.Viewlet):
    grok.context(Interface)
    grok.name('libroweb.base.PersonalBarPortrait')
    grok.viewletmanager(IPortalHeader)

    def render(self):
        return u'hola'

Para aprender de five.grok hay que leer el manual que escribió Martin Aspeli y la documentación en PyPI.

Actualización:

Gracias a que Grok adopta el patrón de diseño convention over configuration, puedo borrar el método render() y crear la plantilla viewlet_templates/portrait.pt (asumiendo que el código anterior se encuentra en viewlet.py).