使用URL结尾作为变量,而不是GET参数?

时间:2014-09-19 18:36:38

标签: python google-app-engine wsgi webapp2

我有一些匹配的网址:

(r'foo/[1-9]?[0-9]/?', Foo)

我不反对让他们成为mydomain.tld/foo?n=84只是因为我认为没有GET参数的永久链接是一种很好的规范(?)风格。

我目前正在做:

class Handler(webapp2.RequestHandler):
    #...
    def currentURL(self):
        return self.request.path_qs

class Foo(Handler):
    def get(self):
        n = re.match(r'.+/([1-9]?[0-9])/?', self.currentURL()).group(1)
        #do something with n

但是,有更清洁,更少黑客的方法吗?

1 个答案:

答案 0 :(得分:2)

来自https://webapp-improved.appspot.com/guide/routing.html ...我认为以下内容可行

(r'foo/([1-9]?[0-9])/?', Foo)

然后

class Foo(Handler):
    def get(self,n):
        print n