[Plone-IT] domanda su browser view

Yuri yurj a alfa.it
Mar 4 Giu 2013 08:52:38 UTC


se ho questa browser view (collective.lineage ma non è importante):

class LineageUtils(BrowserView):

     def getSwitcherDefault(self):
         registry = getUtility(IRegistry)
         settings = registry.forInterface(ILineageSettings)
         if settings.menu_text:
             return settings.menu_text
         return "Jump to Child Site"

     def isChildSite(self):
         portal_state = 
self.context.restrictedTraverse('plone_portal_state')
         root_path = portal_state.navigation_root_path()
         nav_root = self.context.restrictedTraverse(root_path)
         return IChildSite.providedBy(nav_root)

definita poi tramite zcml con permesso zope.Public e con nome 
lineageutils, io posso andare all'url:

miosito.com/@@lineageutils e mi ritorna la classe.

Però andando su miosito.com/@@lineageutils/isChildSite o 
miosito.com/@@lineageutils/getSwitcherDefault non ottengo nulla (torna 
la pagina 404)

ma posso fare in un template (di un'altra browserview, o view o credo in 
un qualsiasi template, poiché qui è usato view per il contesto, potevano 
usare anche view/context no?):

<tal:block define="
                    message view/@@lineageutils;">
<option value="" tal:content="message/getSwitcherDefault">Jump to child 
site</option>
</span>


Qualìcuno sa spiegarmi questo comportamento? Grazie :)


Maggiori informazioni sulla lista Plone-IT