Google App Engine:webapp2路由不起作用

时间:2014-11-17 19:39:31

标签: python routing webapp2

我创建了这些路线:

app = webapp2.WSGIApplication([
  ('/', MainPage),
  ('/empresa', Empresa),
  ('/empresa/perfil', EmpresaPerfil),
], debug=True)

使用这些处理程序:

class Empresa(webapp2.RequestHandler):
  def get(self):
    template_values = {}
    template = JINJA_ENVIRONMENT.get_template('templates/empresa/index.html')
    self.response.write(template.render(template_values))

class EmpresaPerfil(webapp2.RequestHandler):
  def get(self):
    template_values = {}
    template = JINJA_ENVIRONMENT.get_template('templates/empresa/perfil.html')
    self.response.write(template.render(template_values))

但每次我打电话给#34; empresa / perfil"它返回404.

我认为它试图使用名为" perfil"的参数来实现一个方法,但在修改响应处理程序后,我仍然得到相同的错误。

我错过了什么吗?

编辑:包括app.yaml

application: myapp
version: 1
runtime: python27
api_version: 1
threadsafe: yes

handlers:
- url: /img
  static_dir: templates/img/
- url: /empresa
  static_dir: templates/empresa/
- url: /estudiante
  static_dir: templates/estudiante/
- url: /css
  static_dir: templates/lib/css/
- url: /js
  static_dir: templates/lib/js/
- url: /templates
  static_dir: templates/
- url: /.*
  script: guestbook.app

libraries:
- name: webapp2
  version: "2.5.2"
- name: jinja2                                                                  
  version: latest 

1 个答案:

答案 0 :(得分:1)

事实证明app.yaml并没有抓住这条路线。 我修改了以下行来修复它:

- url: /empresa/.*
  static_dir: templates/empresa/

感谢Rafael Barros的帮助:)