class RedirectModel(grok.Model):
    """
    RedirectModel + RedirectView allow us to do redirects from Traverser's easily
    """
    def __init__(self, request, url):
        request.setTraversalStack(['@@index'])
        self.redirecturl = url

class RedirectView(grok.View):
    grok.context(RedirectModel)
    grok.name('index')
    def update(self):
        self.redirect(self.context.redirecturl)
    def render(self):
        pass

Then from your Traverser's traverse():

return RedirectModel(self.request, "/newURL/")
— by Robert Thomson, created 29th Jul, 2009, last modified 29th Jul, 2009 | Tags: Tech