刺身の上にたんぽぽ乗せる日記

プログラミングしたり、自販機の下に落ちてる小銭を集めたりしてます

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使ってるだけなので、そこを変えたコードをコピペで作ったら動いた