Python/GAE な Web アプリの練習

PythonGoogle App Engine に触ってみた。どっちも使ったことないので、ネットで入門テキストを探して、ざっと拾い読み。
で、練習として、FF11 プレイヤーを想定したプチ掲示板を作ってみることにした。完成には程遠い。とりあえずここまでの進捗をメモしておく。

トップページ

トップページは、新着20件を表示。ワールドやカテゴリーを選んで検索することもできる。

できてるとこ:

  • 条件指定なしでの検索っぽいことができる
  • 条件指定ありでの検索っぽいことができる

できてないとこ:

  • 条件指定して検索すると、一覧は正しいけど、条件入力んとこが初期状態に戻っちゃう
  • 一覧で、カテゴリーが名前じゃなくてコード値で表示されちゃう
  • 一覧で、ワールドが名前じゃなくてコード値で表示されちゃう
  • 一覧で、表示される日時が JST じゃなくて UTC
  • 一覧に顔アイコンが表示されない
  • 件数が多い時のページ切り替え (次のn件、前のn件) がない
  • 記事の投稿日時じゃなくて、コメント含めた最終更新日時でソートした方がよさそうな

新規投稿

募集をかける人用の記事投稿ページ。

できてるとこ:

  • 入力して記事登録っぽいことができる

できてないとこ:

  • 顔アイコンの選択
  • 入力値のバリデーションがない
  • 確認ページをはさまずにいきなり登録されちゃう
  • 投稿成功したときの表示が暫定版

記事内容の表示

トップページの一覧でタイトルをクリックすると飛ぶページ。投稿された記事の本文が読めるのと、掲示板っぽく書き込みができる。

できてるとこ:

  • 記事とコメントの表示っぽいことができる

できてないとこ:

  • トップの一覧と同じく、カテゴリー/ワールド/顔アイコンの表示がまだ
  • トップの一覧と同じく、件数が多いときのページ切り替えがまだ
  • コメント入力のバリデーションがまだ

全体

できてるとこ:

  • それっぽく動いているような気分を味わえる

できてないとこ:

  • ページ切り替え。なんか GAE に標準で用意されてたはず
  • バリデーション。GAE に標準で用意されてる機能がある程度使えるはず
  • フォームの初期値変更。とくにラジオボタンとかプルダウンとか。if 文連打以外の方法がないかなー
  • 処理の共通化。コード値から名称を取るとか
  • リソースの見積もりと上限設定
  • Google アカウントでのログインを何に使うか。Google 以外のアカウントはどうすれば使えるか
  • スタイル
  • できればサイドバーとか、RSS とか
  • Safari on Mac 以外での動作確認
  • GAE 実機に載せる

リリース前にやること:

ここまでの感想

そもそも GAE のチュートリアル掲示板系なので、今回みたいな掲示板に近い簡単なやつだと、初心者でもそれっぽいのがさくっと作れる。
たぶん、Python の入門読むのと GAE のチュートリアル読むのを含めても、最初の「とりあえずそれっぽく CRUD できます」ってあたりまでは、数時間しかかかってないと思う。
ただしその先はちょっとめんどくさくて、GAE に関するドキュメントが足りてない感じがする。や、足りてるところは十分足りてるんだけど、足りない部分がスッポリ欠落してるって感じ? リファレンスに載ってないモジュールとか普通にあるし、素の Django との違いもドキュメントからさくっとはわからない。まぁ、僕がまだよくわかってないってだけで、「調べればわかるよ。ググれ」ってことかな。