[Zope-CMF] Re: five.localsitemanager may not do the trick
    Wichert Akkerman 
    wichert at wiggy.net
       
    Thu Jun 21 17:30:10 EDT 2007
    
    
  
Previously yuppie wrote:
> Hi!
> 
> 
> Wichert Akkerman wrote:
> >I spoke briefly with Balasz today and he mentioned that using
> >five.localsistemanager may not be a solution to our problem. If I
> >understand everything correctly the way KSS is setup is that it has its
> >own site manager on the view which is being called. That means that the
> >context for the site manager is the view instead of the 'normal'
> >context. So if they use five.lsm the tools will be wrapped in the view
> >instead of the correct context.
> >
> >Does anyone see a way to fix that? 
> 
> Is this the "Acquisition Context with Nested Sites" problem tested here?
> http://svn.zope.org/five.localsitemanager/trunk/src/five/localsitemanager/localsitemanager.txt?rev=76426&view=auto
No, it is slightly different. That test uses nested views. What KSS
does is set a site manager on a view. Something like:
class SiteViewComponents(BaseGlobalComponents):
    """Slightly different BaseGlobalComponents class"""
class SiteView(BrowserView):
    next = component.getSiteManager()
    self._sitemanager = SiteViewComponents('siteview')
    self._sitemanager.__bases__ = (next, )
    wrapped_view = self.__of__(self.context
    self._sitemanager.registerHandler(wrapped_view._eventRedispatcher)
    def getSiteManager(self):
	return self._sitemanager
    @component.adapter(IObjectEvent)
        def _eventRedispatcher(self, event):
        adapters = component.subscribers((event.object, self, event), None)
	for adapter in adapters:
	    pass # getting them does the work
Interesting things happen with getUtility calls and aq wrapping in that
setup.
Wichert.
-- 
Wichert Akkerman <wichert at wiggy.net>    It is simple to make things.
http://www.wiggy.net/                   It is hard to make things simple.
    
    
More information about the Zope-CMF
mailing list