webapp2路由无法路由到处理程序 - 错误404

时间:2014-01-20 09:28:43

标签: python google-app-engine webapp2

对于博客项目,我正在尝试为不同的网址设置不同的webapp2处理程序。其中一个是帖子的“永久链接”网址(通过帖子ID访问)。另一个是删除帖子的网址。当我尝试转到这样的网址时,我得到一个空白页面,AppEngineLauncher控制台说:

INFO    2014-01-20 08:08:42,574 module.py:612] default: "GET /del/5066549580791808 HTTP/1.1" 404 -

这是我程序中处理程序部分的代码:

application = webapp2.WSGIApplication([ ('/newpost', NewPost),     #works OK
                                        ('/([0-9]+)', PermaLink),  #works OK 
                                        ('/del/([0-9]+)', Delete), #won't work!!!
                                        ('/', Front)], debug=True) #works OK

如果有人对此有一些线索我会很感激。我一直在寻找一个解决方案,但事实上我没有得到任何错误信息,而且似乎(对我来说至少)没有任何意义使得它变得更加困难。

编辑: app.yaml文件:

application: blogapp
version: 1
runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /.*
  static_dir: static

- url: /.*
  script: base.application

libraries:
- name: jinja2
  version: latest

Delete类是用于测试的简单代码,例如:

class Delete(Base):  #Base is my base RequestHandler
    def get(self, s):
        self.response.write(s)

我甚至尝试将网址'/ del /([0-9] +)'与同一个PermaLink类匹配,但仍无效。

1 个答案:

答案 0 :(得分:0)

没关系,它已经解决了。我整理了yaml文件,现在一切正常。

application: blogapp
version: 1
runtime: python27
api_version: 1
threadsafe: true

handlers:
- url: /static
  static_dir: static

- url: (/.*)*
  script: base.application

libraries:
- name: jinja2
  version: latest