DjangoアプリをGAE化(でハマった)

DJangoのアプリをGoogle App Engine(GAE)で動かしてみたのですが、ハマったのでメモ。

GAEでDjangoを使う記事を参考に、サンプルで作ったDjangoアプリをGAE化してみました。が、勘違いしてハマりました。

ハマったのはディレクトリ構造で、GAEのアプリケーションディレクトリとDjangoディレクトリを同一レベルにしてしまったのが敗因。つまりはDjangoアプリの一番上にGAEに必要なmain.pyとapp.yamlを置いてしまった事が悪かったのでした。

誤ったディレクトリ配置

myapp/
  app.yaml
  main.py
  manage.py    - django用
  setting.py   - django用
  ...

正しいディレクトリ配置

myapp/
    app.yaml
    main.py
    myapp/        <--- Djangoアプリをもう一階層下に作る。
        manage.py    - django用
        setting.py   - django用
        ...

説明記事をちゃんと読めばわかる事ですが。まさか myapp/myapp という、同じ名前が続くとは思わなかった・・・。