[Plone-IT] View & implements: non capisco come fare

Vito Falco vitofalco a gmail.com
Gio 2 Ott 2008 10:38:34 UTC


Ciao,
la situazione é questa:
voglio creare una mia view che funga da viewpage per la home (quindi root di
portale). Deve essere possibile richiamare questa view solo nella root, e
finqui ci siamo.

Questa viewpage (chiamata "hp") deve avere dei viewlets completamente
differenti dal resto del web.
Per questo ho provato, per esempio , a dare nel mio configure un
    <!-- homepage view -->
    <browser:page
        for="Products.CMFCore.interfaces.ISiteRoot"
        name="hp"
        class=".hp.hpView"
        permission="zope2.View"
    />

    <browser:viewlet
        name="ucam.special.footer"
        manager="plone.app.layout.viewlets.interfaces.IPortalFooter"
        template="templates/footer.pt"
        permission="zope2.View"
        for="..interfaces.IHpView"
    />

Ecco, vorrei quindi che questo viewlet fosse disponibile solo se é
implementata la interfaccia preposta IHpView che DOVREBBE essere settata
automanticamente settata sull'oggetto, ho quindi nel mio hp.py scritto la
seguente classe:

...
class hpView(BrowserView):

    template = ViewPageTemplateFile('hp.pt')
    implements(IHpView)

    def __call__(self):
        return self.template()

Ma il problema è che mi aspetterei un settaggio al volo di tale interfaccia
sulla mia viewpage hp, mentre il risultato é che si presenta "aggiungibile"
solo via ZMI nel tab INTERFACES e non giá aggiunta da codice. Quindi dovrei
a manina dovrei spuntare sulal mia interface sull'oggetto portalroot. Non mi
piace molto come cosa.
Dov'è che sbaglio?

Muchas gracias
Vito
-------------- parte successiva --------------
Un allegato HTML è stato rimosso...
URL: <http://lists.plone.org/pipermail/plone-plone-it/attachments/20081002/4ce7e1fa/attachment-0001.html>


Maggiori informazioni sulla lista Plone-IT