Google App Engine レビュー
夏目漱石のペンネームは「漱石枕流」と言う故事から来ていると最近知った tmorimotoです。「漱石枕流=石に漱ぎ、流れに枕す」とは、ある対話の中での言い間違いを認めなかった事から、負け惜しみの強い様や屁理屈で言い逃れをする様を指す言葉のようです。何かの機会に中国のエンジニアに言ってみようとタイミングを狙っています、通じるや否や(^ ^;;
リファレンス:
Google App Engine
Google App Engine by 柴田さん
Google App Engine by 吉田さん
Google App Engineを使ってみた by 秋元さん
Ian Bicking: a blog -python-
巷で流行っている Google App Engine を触ってみました。取り合えず登録してみたのですが、まだ十分な開発スペースが用意されていないのか、
SDK をダウンロードして、ドキュメントを読みながらローカルで作り始めてて
と言われたので、その指示に従ってみる事にしました(^ ^;;
さて、Google App Engine -Getting Started- にチュートリアルが用意されています。色々な "Hello World!" サンプルが紹介されています。Web アプリということで、その中でも見た目が派手そうな Using the webapp Framework と Using the Datastore を参考にして、当社のプロダクトを選択するような Web アプリを作成してみました。開発スペースをもらったら、こういうサンプルを以下のような画像で紹介する必要が全くなくなるわけですね。すごい世の中になってきたものです(^ ^;;
私が作成してみたサンプルは、販売中、又は今後リリース予定のプロダクトを出力する Web アプリケーションです。
Google さんで紹介されているサンプルやドキュメントを参考にしながら、書いたコードをアップしておきます。google_appengine を展開したディレクトリ配下に showproduct ディレクトリを作成して以下の2つのファイルを置けば良いです(helloworld の代わりに showproduct に名前を変更しただけです)
showproduct.pyをダウンロード
app.yamlをダウンロード
ドキュメントの中で Django のデータモデリング API に似ているとありました。そもそも、私は Django を使った事がないのでよく分かりませんが、 Django を使っていた人には馴染みやすいのかもしれません。また、私自身、まだ良く分かっていないので、サンプルコード自体は参考にしないでください。以下の2点をどう記述すべきが分かりません。
- form から post で受け取ったタイプ(select_type)をグローバル変数で制御
- DB に初期データをセットする方法が分からない
これは駄コードだと分かっても、どうすれば?というのは難しかったりします(T T)、識者のコメントを期待です。また、サーバ起動時にテストデータを削除したい場合、"--clear_datastore" をオプションに与えれば、毎回リセットしてくれるようです。ローカル環境だと、"/tmp/dev_appserver.datastore" にデータが保管されているようですね。
$ ./dev_appserver.py --clear_datastore showproduct/
$ strings /tmp/dev_appserver.datastore | head
helloworldr
Product
date
2008/08r
name
Asianux Serverr
type
planr
version
3 SP1






コメント