このサイトについて

TurboGearsのCatWalkを使ってみた

TurboGearsのCatWalkを使ってみた

リスト画面

ブラウズ画面

編集画面

TurboGears 0.9から搭載されているCatWalkを使ってみた。CatWalkとは,データベースの定義を動的に読み込んで,CRUDフォームを自動生成してくれるツール。

使い方は簡単で,controllers.pyで

from turbogears.toolbox.catwalk import CatWalk

して,Rootクラスなどに

catwalk=CatWalk(model)

と定義してあげるだけ。TurboGearsのアプリを起動し,http://localhost:8080/catwalk/ などにアクセスすると,CatWalkの画面が現れる。

上のコードで,Rootクラスにcatwalkというアトリビュートを設定しているわけだけど,CherryPyがURLを分解して,catwalkにリクエストを届けてくれているのですな。

画面は左のような感じ。日付編集用にはカレンダーウィジェットが用意されているし,リレーションも編集できる。パスワードがハッシュ化されているのとかも注目ポイントね。TG_User由来のmodelであれば,設定ひとつで勝手にパスワードをハッシュ化してくれて,かつ標準の認証(identity)でも使ってくれる。いやあ,気が利いているよなあ。データ投入用とか,お客に見せない系のフォームはもうこれでOKという感じ。Pythonistaの「能力の余りよう」といったら凄いわ。

Ajaxっぼく作ってあるので,ブラウザ上でURLが切り替わってリフレッシュするような遷移はほとんど無い。「戻るボタンが使えない」とかいうと怒るよ言ってないですかそうですか。

英文のHowTo
http://www.turbogears.org/docs/toolbox/catwalk.html
2010-08-27 04:39