Catalyst

Catalyst::Controller::ActionRoleって...

action_rolesを指定して、コントローラ全体にmodifierかけると微妙だよね。 例えばこんな感じ。 package Umakatter::Web::Controller::Example; use strict; use warnings; use base qw/Catalyst::Controller::ActionRole/; __PACKAGE__->config( action_rol…

:Default :Index って

ソースに実装されてるけど、実際に使われてるのかなぁ。http://cpansearch.perl.org/src/FLORA/Catalyst-Runtime-5.80007/t/lib/TestApp/Controller/Action/Auto.pm http://cpansearch.perl.org/src/FLORA/Catalyst-Runtime-5.80007/t/lib/TestApp/Controlle…

Catamoose

http://jjnapiorkowski.vox.com/library/post/catamoose-developer-release-on-cpan.html?_c=feed-atomhttp://search.cpan.org/~mramberg/Catalyst-Runtime-5.8000_01/Catamoooooooooooooooooose

 セットアップ

# Start the application __PACKAGE__->setup( do { my @plugins = qw/Config::Multi Unicode/; push @plugins, 'StackTrace' if $ENV{CATALYST_DEBUG}; push @plugins, 'Log::Colorful' if $ENV{CATALYST_DEBUG}; push @plugins, 'Static::Simple' if $ENV{…

Plugin*

id:dannさん、id:tokuhiromさん、id:charsbarさんがおっしゃってるCatalystのプラグイン関連は、すごく正しいとおもいます。ただ、フレームワークを作ったり、使い込んでなかったりしてないと、わからなかったりするんじゃないかなぁと思いました。またCatal…

Catalyst-Model-DynamicAdaptor bug

追記 id:vkgtaroさん,ハイドKさん(id:hide-K),id:hideden さんに手伝ってもらい 原因を修正し、0.02で反映しました。ありがとうございました。 不具合があった... no strict 'refs'; for my $plugin (@plugins) { my $obj = $plugin->new($config); my $plug…

Catalyst-Model-DynamicAdaptor-0.01 をUPしました。

Catalyst-Model-DynamicAdaptorをcpanにあげました。 何ができるの? Catalyst::Model::DBIC::Schemaみたいに、モジュールを動的に読み込むことができます。 ケーススタディ MyApp::Logic 配下のモジュールを動的に読み込みたいとしましょう。 まず読み込む…

今日のNewbiethon成果(CatalytApp::CLI)

全然汎用的じゃないけど、Catalystの依存をできるだけ避けて、CLI補助モジュール作った。 config , schemaが使えるだけなんだけど。Catalyst-Plugin-ConfigLoader-Multi を使ってる方なら、少しコードを変更すれば使えると思うよ!今日はコーディングより、…

Catalyst

Catalyst好きです。結構愛してます。

C::V::JSON

JSONPにしようと思って、allow_callbackつけたら、utf-8が文字化けして困った。 $output .= "$cb(" if $cb; $output .= $json; $output .= ");" if $cb; とりあえず動くようにしようと、こうしたら治った。 $json = Encode::decode($encoding, $json) if $en…

Catalst Server と LWP

catalystアプリを付属のサーバを使って開発してて、コードの中に自分自身にLWPをする場合があって、その場合固まるからなんでかずっと悩んでたんだけど、付属のサーバはリクエストを一つしか受け付けないから、だめなのに id:woremacx さんが気づいてくれた…

NEXT ,C3

very nice.

Config + Unicode

設定ふぁいる情報のutf8フラグの建て方( fileはConfigLoader::Multiの設定) $YAML::Syck::ImplicitUnicode = 1; __PACKAGE__->config( 'Plugin::ConfigLoader' => { file => __PACKAGE__->path_to( 'conf' ) } , driver_args => { 'YAML::Syck' => { } } , );

強制エラーページ表示

http://d.hatena.ne.jp/kane46/20071102/1194014078凝らないでいいなら、すぐできる気がしたので、暇つぶしに書いてみた。 package App::Controller::Root; sub end : ActionClass('RenderView') { my ( $s, $c ) = @_; if( $c->req->param('x-debug') eq 1 …

libの構成

http://d.hatena.ne.jp/lestrrat/20070509#1178671218の記事をみて、おお!と思い真似してたんですが、http://search.cpan.org/~claco/Mango-0.01000_06/これを見てて、 Catalyst も良いかと思った。すぐカタリスト用だってわかるしさ。 MyApp::Web::Control…

外部Modelの読み込み

外部のModelを読み込む方法を書いてたと思ったら、書いてなかったぽいのでメモ setup_components: search_extra: - MyApp::Common::Model

Catalyst::Plugin::ConfigLoader::Multi

現状のコードのままだと、'Plugin::ConfigLoader::Multi'だと動かないので、'Plugin::ConfigLoader'だな。 __PACKAGE__->config( 'Plugin::ConfigLoader' => { file => __PACKAGE__->path_to('conf') } , ); 以下のようにするには、get_config_pathをオーバ…

ちょっと手軽な開発者用のコントローラを作ったんだけど、プロダクションにはあげたくないよ〜。ママ〜って時。

ちょっと手軽な開発者用のコントローラを作ったんだけど、プロダクションにはあげたくないよ〜。パパ〜って時はこんな感じのコントローラを継承するとかどうだろうか。 package Catalyst::Controller::AllowDisable; use base qw/Catalyst::Controller/; use…

Catalyst::Plugin::ConfigLoader & Catalyst::Plugin::ConfigLoader::Multi

id:kopugさんCatalyst::Plugin::ConfigLoaderの次のりりーすで、 [DEPRECATION NOTICE] - the "file" and "config_local_suffix" config keys are now to be explicitly set under the Plugin::ConfigLoader key. Support for these keys will be removed in…

Catalyst::Plugin::FormValidator::Lazyまとめ

http://tomyhero-perl-module.googlecode.com/svn/trunk/Catalyst-Plugin-FormValidator-Lazy/ http://d.hatena.ne.jp/tomyhero/20070808/1186579457 http://d.hatena.ne.jp/tomyhero/20070810/1186754531 http://d.hatena.ne.jp/tomyhero/20070814/11870637…

第6回 Catalyst::Plugin::FormValidator::Lazy custom_parameters

概要 俺俺パラメータ設定したいよー。たらららったらーん。custom_parameters!!! 説明 たまにCGI.pmが取得したパラメータじゃなくて、自分で取得した物をわたしたいことがある。そういう時に使用する。 特にセッションを使用している際にいい感じです。 サン…

Catalyst::Plugin::ConfigLoader own macros suport!

最近メーリングで流れていたパッチがあたり、version 0.16で俺俺メソッドをコンフィグで使用できるようになった。わーい。 MyApp->config->{ 'Plugin::ConfigLoader' }->{ substitutions } = { baz => sub { my $c = shift; qux( @_ ); } } bar : __baz(x,y)…

第5回 Catalyst::Plugin::FormValidator::Lazy regex_map

概要 user_id ,category_id , etc... id ごとにフォーマットの設定をするのが邪魔臭いよ〜ドラエもーん。 ラララ〜。のびたクン、そういう時にはregexp_map! サンプル(かけ算) http://tomyhero-perl-module.googlecode.com/svn/trunk/Sample/Neko-Web/ 設定…

Session + Redirect

なんか、リダイレクトした後リダイレクト前に設定したセッションが取れない場合があった。 とりあえず、$c->finalize_session; を先に呼んだら動いたっぽいけど微妙なきがする。 finlize前にリダイレクトされて処理されとるんかなぁ。後で調べる。 sub add :…

第4回 Catalyst::Plugin::FormValidator::Lazy method+

検証関数を使いまわしたい時。 概要 第3回に述べた方法だと、フィールドごとに関数なので、関数が使い回せない。これっていけてなさすぎる。ということで、 使用したい関数を指定できるようにアップグレードした。 サンプル(足し算) http://tomyhero-perl-m…

第3回 Catalyst::Plugin::FormValidator::Lazy method Validation勉強

フィールド名とマッピングした検証関数の使用方法を勉強します。 目的 この機能は当初正規表現だけの実装だったのを、関数も使えるようにしようと実装しました。 サンプル(メールアドレスフォーマットチェック) http://tomyhero-perl-module.googlecode.co…

第2回 Catalyst::Plugin::FormValidator::Lazy dfv_push_invalid編

概要 FormValidatorのチェックはあくまで、フォーマットであり、それをパスした後にDFVのエラーにしたい時がある。 例えば、登録の処理で、使用したメールアドレスはすでの登録されていたときなど。そういう時の為に、$c->dfv_push_invalid があります。 サ…

第一回 Catalyst::Plugin::FormValidator::Lazy 勉強

C::P::FormValidaor::Lazyというモジュールの紹介と使い方をまとめていこうと思います。 取得方法 残念ながら、CPANには上げてないので、http://tomyhero-perl-module.googlecode.com/svn/trunk/Catalyst-Plugin-FormValidator-Lazy/ここから取得して下さい…

-Debug or CATALYST_DEBUG

リリースしたてで、ちょくちょく変更があって、プロダクションで-Debugを取り除いたり、開発環境で-Debugをつけたりするのが超面倒くさい。 ので、環境変数を使った方がいいとおもう。 export CATALYST_DEBUG=1 #OR export MYAPP_DEBUG=1

Model + Config

http://blog.kzfmix.com/entry/1184850923>cache_rootとかdefault_expiresを設定ファイルに追い出すことはできないのだろうか?微妙だけど、こんな感じで一応設定に持てるかなぁ。動かしてないけど... use MyApp; use Cache::File; use base qw/ Catalyst::Mo…