2017-10-13 15 views
0

「ボート」リソースを持つAPIを作成しようとしています。そのIDと別のリソースを持つURLをビルドしたいと考えています。GAE Python WebApp2 url/resource /:id/resource

localhost:8080/boat/absk12712480/arrival 

私はもともと持っていた:

app = webapp2.WSGIApplication([ 
    ... 
    ('/boat/(.*)/arrival', ArrivalHandler), 
    ... 
    ], debug=True) 

しかし、それはIDの一部として、 "/到着を" つかむまま。だから私は試しました:

('/boat/(.*?(?=\/)/arrival', ArrivalHandler) 
('/boat/(.*?(?=\/arrival)/arrival', ArrivalHandler) 

私は可能なことをしようとしていますか?

答えて

1

('/boat/(.*)/arrival', ArrivalHandler)正規表現はあまりにも貪欲であり、webapp2 URI formatと一致しません。 IDは、ASCIIと数字常にちょうど小文字である場合は、使用できます。

('/boat/<:[a-z0-9]+>/arrival', ArrivalHandler)

を名前付きパラメータをしたい場合は動作するはず、または

('/boat/<id:[a-z0-9]+>/arrival', ArrivalHandler)

+0

ありがとうございます。あなたの正規表現の助けを借りて私は解決策を見つけました。 **( '/ boat /([A-z0-9 \ - ] +)/ arrival' **私はLazy Handlerを使用しているので –

関連する問題