Google App Engine:如何在GAE中将变量放入我的网址

时间:2009-11-15 23:38:54

标签: google-app-engine

我正在尝试使用app.yaml文件解决问题。

如何从我的网址中获取“nh”和“dover”:http://www.mysite.com/boats/nh/dover

我假设会做类似的事情:

- url: /boats/<state>/<city>
  script: boats.py

然后能够以某种方式得到变量,但我很难找到相关的文档。

提前致谢

3 个答案:

答案 0 :(得分:8)

app.yaml中的正则表达式组不会直接传递给webapps。但是,如果您正在使用webapp框架,则路由正则表达式中的组会传递给webapps。例如:

的app.yaml:

- url: /.*
  script: boats.py

boats.py:

class BoatsHandler(webapp.RequestHandler):
  def get(self, state, city):
    # Do something with state and city. They're strings, not ints, remember!

application = webapp.WSGIApplication([
    ('/boats/([^/]+)/([^/]+)', BoatsHandler),
])

def main():
  run_wsgi_app(application)

if __name__ == '__main__':
  main()

答案 1 :(得分:1)

他们在这里提到了一些东西,但它含糊不清:

http://code.google.com/appengine/docs/python/config/appconfig.html

答案 2 :(得分:1)

- url: /boats/.*
  script: boats.py

并通过request object检索网址的其余部分。

class BoatsHandler( webapp.RequestHandler ):
  def get(self, url_fragment=None):
   #do something with url_fragment