Google App Engine with django
とりあえずSDKをインストールして簡単なアプリを作成してみた。
Google App Engine Documentation | App Engine Documentation | Google Cloudを一通りやったあと、djangoでアプリを作ってみたけどちょっとはまったので書いておきます。
ちなみにpythonもdjangoも初めてさわったので間違ってるところがあるかも。
まずはbootstrap
Getting Started With Django | Python | Google Cloudそのままだとダメだった。
# Google App Engine imports. from google.appengine.ext.webapp import util from django.core.management import setup_environ from mysite import settings setup_environ(settings) # Force Django to reload its settings. from django.conf import settings settings._target = None import django.core.handlers.wsgi import django.core.signals import django.db import django.dispatch.dispatcher # Log errors. #django.dispatch.dispatcher.connect( # log_exception, django.core.signals.got_request_exception) # Unregister the rollback event handler. django.dispatch.dispatcher.disconnect( django.db._rollback_on_exception, django.core.signals.got_request_exception) def main(): # Create a Django application for WSGI. application = django.core.handlers.wsgi.WSGIHandler() # Run the WSGI CGI handler with that application. util.run_wsgi_app(application) if __name__ == '__main__': main()
Google グループとGoogle グループを参考にしました。
djangoアプリを作る
$ django-admin.py startproject mysite
settings.pyを編集する
Getting Started With Django | Python | Google Cloudの Updating Django Settings のように設定する。が、やっぱり動かず。
ファイルの先頭に import os を追加したらOKでした。
とりあえず動作確認
app.yamlを作成する。
application: test version: 1 runtime: python api_version: 1 handlers: - url: /static static_dir: static - url: /.* script: main.py
これでdev_appserver.pyを実行して開発用のサーバーを起動してhttp://localhost:8080/を確認すると、djangoのデフォルトのページらしきものが表示された。