Google App Engine + Djangoの地雷
基本的には https://cloud.google.com/python/django/appengine にそって行けばいいんだけど、地雷を一杯踏んだので書いておく。
- App Engineの場所はアメリカにしろ。AsiaはSQLとApp Engine一緒に置けない。
- 書かれてないけど、SQLのDB作成時に、場所はApp Engine準拠にしておくと多分いい?
- python manage.py migrateする前にpython manage.py makemigrationsしたほうが良さそう
- ローカルサーバーで動かす時はpython manage.py runserverではなく、dev_appserver.pyを使わないとgae関連のapiが使えない
- 大きめのファイルのアップロードをdjangoで受ける際は自作のupload handlerを描かないといけない(http://stackoverflow.com/questions/3586134/how-to-avoid-notimplementederror-only-tempfile-temporaryfile-is-available-for-u)
- 1.9の実装はNamedTemporaryFile使ってるだけなので、そこを変えたコードをコピペで作ったら動いた