GoogleAppEngineのapp.yaml設定でサブディレクトリにappを置く(python1日目の備忘録)
GAE/py webapp2
main.pyにすべて処理させるのではなく、サブディレクトリのアクセスはサブディレクトリに配置したpy(app)に処理させたい
まずつまづいたのはディレクトリを区切る時に/スラッシュではなくて.ドットで区切る
rootディレクトリ以下の処理
main.py
console以下のアクセス処理
console/main.py
console/sub/以下のアクセス処理
console/sub.py
というファイルがあった時
- url: /console/sub/.*
script: console.sub.app
login: admin
secure: always
- url: /console/.*
script: console.main.app
login: admin
secure: always
- url: .*
script: main.app
以上のようになる。がしかしこれだけでは動かず!
console/直下に__init__.pyという空のファイルを置く必要があるみたい
console/sub.py
app = webapp2.WSGIApplication([
('/console/sub/list', List),
('/console/sub/item/add', ItemAdd)
], debug=True)
のようにしてルーティングする
以下のようになる
main.py
console/__init__.py
console/main.py
console/sub.py
- url:
/console/sub/.*
script: console.sub.app
login: admin
secure: always
- url: /console/.*
script: console.main.app
login: admin
secure: always
- url: .*
script:
main.app