Am Samstag, 2. April 2005 08:37 schrieb Stephan Richter:
> On Saturday 02 April 2005 04:38, jÃrgen Kartnaller wrote:
> > > Why in the world would you want to do that? This seems just awful. What
> > > is your use case?
> >
> > In my case I want to have the possibility to jump back to my base view
> > (which is the default view of my site) from wherever I am within my site.
> >
> > But, if there is an easier way to do this, please let me know.
>
> Then write a wrapper view for all interfaces that internally looks up the
> next site and looks up the default view:
>
> class SiteDefaultView(object):
>
>   def __call__(self):
>       site = getNextSiteSomehow()
>       defaultViewName = getDefaultViewName(site, self.request, site)
>       view = zapi.getMultiAdapter((site, request), Interface,
> name=defaultViewName) return view()

Hello,
your solution:

class toSite(object):
    def __call__(self):
        from zope.app.zapi import *
        site = getSite()
        defaultViewName = getDefaultViewName(site, self.request, site)
        view = getMultiAdapter((site, self.request), name=defaultViewName)
        return view()

get the same results as mine:

class toSite(object):
    def __call__(self):
        from zope.app.zapi import absoluteURL
        URL = absoluteURL(getSite(), self.request)
        return self.request.response.redirect(URL)


What are the differences? Which is better? Why?

I think yours is better since it does not involve a redirect. What do you 
think?

Thanks,

Florian

_______________________________________________
Zope3-users mailing list
Zope3-users@zope.org
http://mail.zope.org/mailman/listinfo/zope3-users

Reply via email to