Hatena::Groupcatalyst

dann@catalyst このページをアンテナに追加 RSSフィード

2008-01-03

Catalystで認証

01:56 |  Catalystで認証 - dann@catalyst を含むブックマーク はてなブックマーク -  Catalystで認証 - dann@catalyst  Catalystで認証 - dann@catalyst のブックマークコメント

http://catalyst.perl.org/calendar/2007/6

  • Auth Controller作成
  • Root Controllerのautoメソッド中でAuth Controllerのcheck_loginメソッドをcall

Catalyst::Model::Adapter

01:34 |  Catalyst::Model::Adapter - dann@catalyst を含むブックマーク はてなブックマーク -  Catalyst::Model::Adapter - dann@catalyst  Catalyst::Model::Adapter - dann@catalyst のブックマークコメント

http://catalyst.perl.org/calendar/2007/24

ざっと読んでみました。任意のクラスをCatalystのモデルにというものらしい。Catalystへの依存関係を切れるというのはいいかもしれない。基本的にCatalystのモデルクラスに処理を書かずに、全てAdaptorで委譲するというのがいいのかも。これでModelがCatalystに依存しないので、テストはしやすくなる。

これみると、ますますMangoのディレクトリ構成に変更したくなってくるなぁ。今のディレクトリ構成だとCatalystべったりだからなぁ。

catastarter MyApp::Catalyst -new

みたいにして、Catalystを押し込めてしまって、MyApp直下にPlain Classを配備ってのが綺麗かな。で、そのPlain Classに対してAdaptorから委譲すると。

starter周りの更新

00:49 |  starter周りの更新 - dann@catalyst を含むブックマーク はてなブックマーク -  starter周りの更新 - dann@catalyst  starter周りの更新 - dann@catalyst のブックマークコメント

TT2のテンプレートとCSSなどをざっくり追加して、昨日のエントリを更新。View周りのテンプレートなどが一通りあると、開発が始めやすいなぁと。ただ、starterの中に全部埋め込むのはちょっとやりすぎだったかも。もう少し汎用的にできたら、Mangoみたいな形にしよっと。

Mango

18:41 |  Mango - dann@catalyst を含むブックマーク はてなブックマーク -  Mango - dann@catalyst  Mango - dann@catalyst のブックマークコメント

Mangoのディレクトリ構成は、参考になるなぁ。

http://svn.mangoframework.com/CPAN/Mango/trunk/

  • CatalystをMango::Catalyst以下に押し込めている
  • SchemaディレクトリはMango::Schema、要するにCatalyst
  • デフォルトのテンプレート群をshare 以下に置いている

Catalystはメタなフレームワークだから、その上にどんな形で自分流のカスタマイズができるように工夫していけるかってところがポイントで、その一つの例がMangoなんだなと感じた。Mangoっぽく、Catalystを利用してフレームワークを作って、アプリケーションではそのフレームワークをExtendして使っていくってのはいいかもしれない。

いくつかアプリを作ってstarterカスタマイズしていって、共通で使えそうなところがでてきたら、Mangoっぽくフレームワークとして切り離して、育てていくってのがいいかな。

HTML::FormFu

18:41 |  HTML::FormFu - dann@catalyst を含むブックマーク はてなブックマーク -  HTML::FormFu - dann@catalyst  HTML::FormFu - dann@catalyst のブックマークコメント

Day 20 - HTML::FormFu - Handles forms, so you don't have to

FormValidator::Simple::Autoがかなりいいんじゃないかと思っていたけれど、HTML::FormFuもよさそうだなぁ。いい点は、以下の2点

  • Form定義とValidationルール、Validationのメッセージを一箇所に書ける点
  • 定義がYAMLで書け、読みやすい

ただ、HTMLの要素はテンプレート中に書いていったほうがいいのかなぁと思うこともあり、FormValidator::Simple::Autoのほうがいいのかなと思うこともあり。もう少しやってみてから考えることに。

catstartもCatalyst::Controller::HTML::FormFuを使うように変更して、root/forms以下にform定義を配備するようにしてみた。

See also: http://search.cpan.org/~cfranks/Catalyst-Controller-HTML-FormFu-0.02000/lib/Catalyst/Controller/HTML/FormFu.pm

トラックバック - http://catalyst.g.hatena.ne.jp/dann/20080103