Google App Engine重定向错误

时间:2012-06-03 12:47:29

标签: python google-app-engine

构建一种维基。在以下函数中,我正在检查页面是否已存在。如果没有,它应该重定向到编辑页面。但它无限重定向,直到浏览器停止它。 '_edit'handler什么都没做......

def get(self, pageName):
        p = db.GqlQuery("SELECT * FROM Pages")
        pages = p.run(batch_size = 1000)
        pageExist = False
        for page in pages:
            if pageName ==  page.pagename:
                pageExist = True
                break
        if pageExist:
            self.render_wiki(pageName, page.content)
        else:
            self.redirect('/_edit' + pageName)

PAGE_RE = r'(/(?:[a-zA-Z0-9_-]+/?)*)'
app = webapp2.WSGIApplication([('/', MainPage), ('/signup', Signup) , ('/login', Login),('/logout', Logout), (PAGE_RE, WikiPage), ('/_edit' + PAGE_RE, EditWiki)],  debug = True)

1 个答案:

答案 0 :(得分:1)

尝试将您的EditWiki路线移至WikiPage路线之前。 PAGE_RE与_editMyPageName匹配,因此在EditWiki开始之前抓取它。我会说,对于每个重定向,您的页面名称只会获得额外的'_edit'前缀..