[Plone-IT] browser:defaultView comportamento ambiguo

Yuri yurj a alfa.it
Lun 12 Gen 2009 10:26:24 UTC


Vito Falco ha scritto:
> Ciao,
> come mi è stato consigliato qualche giorno fa, per poter rendere la 
> mia browserpage "hp" la page_default del sito, nel configure.zcml 
> (cartella browser) del mio prodotto ho scritto:
> [...]
>     <browser:page
>         for="Products.CMFCore.interfaces.ISiteRoot"
>         name="hp"
>         class=".hp.hpView"
>         permission="zope2.View"
>     />
>     <browser:defaultView
>           for="Products.CMFCore.interfaces.ISiteRoot"
>           name="hp"
>           />
> [...]
>
> Funziona ma, ora nella mia istanza Zope per ogni nuovo plone-site 
> creato mi ritrovo sempre questa direttiva valida anche se NON INSTALLO 
> il mio prodotto in un dato plonesite.
> Il comportamento che mi sarei aspettato è quello della browserpage 
> "hp" come homepage SOLO quando installo il mio prodotto.
>
> Come dovrei fare per ovviare a questo comportamento? :-/

Il tuo prodotto dovrebbe "flaggare" con una interfaccia il sito plone, 
nella fase di installazione, e qui sopra aggiungi la riga:

class="mioprodotto.interfaces.IMiaClasseFlag"

In questo modo il zcml diventa attivo solo se quella istanza supporta 
quella interfaccia (si può fare anche a mano spuntando IMiaClasseFlag 
nella tab Interfaces del sito Plone.

il zcml viene cmq letto, anche se non hai installato il prodotto, perché 
è a livello Zope che agisce.




Maggiori informazioni sulla lista Plone-IT