• ログインログイン
  • 新規登録新規登録

MENU

Google App Engineで遊んでみよう! 第6回

連載Google App Engineで遊んでみよう!

GoogleAppEngineを使った開発レシピです。AWSやさくらインターネットのVPSやレンタルサーバなどの他の有名なクラウド環境と比べると少しクセがあるものの、慣れると非常に楽に開発やローンチができます。一定の範囲内まで無料で活用できるようになっているので、これを機会にぜひ活用してみましょう。

前回までのプログラミング学習コラムに続き6回目の勉強内容です。

こんにちは、ぴかしです。前回までのTwitter Botの作成を通して、GAEの基本を説明しました。今回からは、Kay FrameworkというPythonフレームワークを使って、簡単なTwitterクライアントを作ってみようと思います。

Kay Frameworkとは

Kay Frameworkは、GAE専用のPythonフレームワークです。PythonフレームワークとしてはDjangoやPyramidあたりが有名どころですが、これらはGAEに載せる際は相性があまりよくありません。Kay FrameworkはGAEに特化されたフレームワークであり、GAEの強力な機能を100%活かすことができるように設計されています。現場でも実際に導入されており、誰もが知る有名なソーシャルサービスでもKay Frameworkが採用されています。

私がKay Frameworkを気に入っている理由としては、以下のものがあります。

・開発者が日本人ということもあり、日本語チュートリアルが充実しています。ただ、Web上のリファレンスの数自体はそれ程多くないため、細かいところでつまずくと苦労することもあります。

・ 認証機能が提供されており、Twitter Oauth認証などにサクッと対応できます。

Helloを表示させよう!

いよいよKay FrameworkでHelloを表示させてみます!開発環境はMac OS 10.8、Python2.7、GAE SDK 1.8.3です。

まず、Kayのコードをcloneし、プロジェクトを作成します。

hg clone https://kay-framework.googlecode.com/hg/ kay
python kay/manage.py startproject twitter-client # プロジェクト名
cd twitter-client
python manage.py startapp client # アプリ名

もしプロジェクト作成時に ImportError: No module named webob というエラーが表示された場合は、以下のようにwebobにシンボリックリンクをはることで解決できます。

tar zxvf /Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine.zip # 解凍されていない場合
ln –s /Applications/GoogleAppEngineLauncher.app/Contents/Resources/GoogleAppEngine-default.bundle/Contents/Resources/google_appengine/lib/webob-1.1.1 webob

次に、settings.pyのINSTALLED_APPSとAPP_MOUNT_POINTSを以下のように編集して下さい。

INSTALLED_APPS = (
 'kay.auth',
 'client',
)
APP_MOUNT_POINTS = {
 'client': '/',
}

ちなみに、セッションやキャッシュなどを有効にする場合はこのsettings.pyに記述します。例えば以下のように記述することで、キャッシュを有効することができます(今回はTwitterクライアントなのでキャッシュは利用しません)

CACHE_MIDDLEWARE_SECONDS = 259200 # キャッシュされる秒数を指定します
MIDDLEWARE_CLASSES = (
 'kay.auth.middleware.AuthenticationMiddleware',
 'kay.cache.middleware.CacheMiddleware',
 )

では、開発サーバでアプリケーションを起動しましょう!以下のコマンドで実行できます。

python manage.py runserver

http://localhost:8080 にアクセスし、以下のようにHelloが表示されていれば成功です。

これで開発環境は整ったので、次回からはTwitter Clientを作成していこうと思うので、ご期待下さい。最後まで読んでいただき、ありがとうございました。

完全無料!

1で登録完了!

エンジニアの仕事・年収や選考ノウハウ記事が読めるほか、
会員にはプログラミング講習やES・面接対策などリアルな無料サポートも充実。
ここだけの求人情報も多数。

今すぐ新規会員登録
Page Top