SledgeのValidatorを作るにあたって、FormValidator::Simple用のプロファイルをYAMLで定義するためのモジュールを書いてみました。 FormValidator::Simple::ProfileManager::YAML まずは以下のようなYAMLファイルを用意します。 # sample yaml profile group1 : - name - [ [NOT_BLANK] ] - email - [ [NOT_BLANK], [EMAIL_LOOSE] ] - tel - [ [NOT_BLANK], [NUMBER_PHONE_JP] ] - content - [ [NOT_BLANK] ] group2 : subgroup1 : - userid - [ [NOT_BLANK]] - password - [ [NOT_BLANK]] - name
Sledgeのバリデータといえば、Sledge::Plugin::Validatorなんですが、このプラグインが出てくる前からSledgeをいじっていたので、バリデータは自前で実装したものを使っていました。 このバリデータの機能はこんな感じのものでした。 バリデーションのルールはXMLで定義する。 バリデータをuseするだけで、バリデーションが効くようになり、それを削除してもプログラムは問題なく動く(Pagesクラスにバリデーションに関するコードを書く必要がない) バリデーションはPOSTリクエスト時にのみ作動し、BEFORE_DISPATCHのトリガとして動作する エラーを見つけるとテンプレートのパラメータにエラーをセットし、post_dispatch_fooをスキップし、dispatch_fooのみ実行する バリデータをuseするだけで自動的にバリデーションが効くようにするということを
12 Things I dislike with Sledge Sledge に触らなくなってしばらくたちますが Sledge 2.0 への要望ということで。 1. デフォルトが .cgi での起動で、URL ごとにファイルをつくらないといけない。 2. スタンドアロンのサーバがない。HTTP::Server::Simple::CGI あたりでスタンドアロンに起動できるようにしたり、FastCGI をデフォルトサポートできるとよいかも 3. sessions テーブルを手動でつくらなければならない。メンドウ。Helper? 4. Config ファイルの命名方法 (_production.pm) や読みわけ (Proj-conf.pl・環境変数) が変態的 5. Hook やプラグインをサブクラスで無効化できない 6. プラグインが実際に "Plug In" でない。利用する側が明示的に利
先日の Shibuya.pm テクニカルトーク #6 で、やっぱり注目のフレームワークは Catalyst なんだなぁーって思いつつ、日頃から Sledge を使っているせいか、あまり良さや真新しさを感じなかったりして。 「メタフレームワーク」という存在定義っぽいので、Catalyst のそれ自体は割と貧相。 なのに Helper まわりとかは妙にゴージャス & 拡張されているので、やる事や Model が決まってればすぐに使え、そうじゃない場合はすぐ使えなさそう。 Rails の対抗馬なのかも知れないですが、Rails な人が wink とか使ってアジャイル開発とか言って見せびらかしているようなのを真似するには向かないかも知れないですね。 まぁ Sledge も Model に制約がなかったりするのでまず向かないですが「10 分でブックマーク作れ」とか言われたら出来るかも知れん。 Cat
リリース、障害情報などのサービスのお知らせ
最新の人気エントリーの配信
処理を実行中です
j次のブックマーク
k前のブックマーク
lあとで読む
eコメント一覧を開く
oページを開く