1

我正在使用带有 python 和 webapp2 的 app-engine 构建我的新网站我很难在我的 web 应用程序中定义 URI

我需要的结果是:

http://www.example.com/
http://www.example.com/products/
http://www.example.com/products/table

我认为这是一项简单的任务,但显然不是(对我来说,无论如何)

当我尝试加载类似的内容时出现 404 错误: http ://www.example.com/products/chair/

我的错误在哪里?

app = webapp2.WSGIApplication([
webapp2.Route('/', MainPage),
webapp2.Route('/products/', handler=MainProductsHandler),
webapp2.Route('/products/(\w+)/', handler=ProductHandler)
],debug=True)
4

2 回答 2

1

好的,我解决了。就像这样:

app = webapp2.WSGIApplication([('/', MainPage), ('/product/.*', MainPage)], debug=True)

我认为我在使用 webapp2.Route 方法时遇到了问题

不管怎么说,还是要谢谢你

于 2011-12-10T09:53:23.130 回答
1

您的第一种方法将使用尖括号包裹正则表达式,如下所示:

app = webapp2.WSGIApplication([
webapp2.Route('/', MainPage),
webapp2.Route('/products/', handler=MainProductsHandler),
webapp2.Route('/products/<id:(\w+)>/', handler=ProductHandler)
],debug=True)

不要忘记将参数 id(或您为正则表达式匹配选择的任何名称)添加到处理程序的 get 方法,否则它将抱怨意外的参数。

于 2012-11-06T15:15:30.170 回答