Catalyst

Catalyst::Plugin::I18Nで国際化 with Template-Toolkit(Catalyst::View::TT)

前回のCatalyst+Template-Toolkit(Catalyst::View::TT)で国際化 - ヒルズで働く@robarioの技ログはCatalyst::Plugin::I18Nでできるよとのコメントをいただきましたので、それでやることにしました。 Catalyst::Plugin::I18Nで国際化 lib/MyApp/L10Nではな…

Catalyst+Template-Toolkit(Catalyst::View::TT)で国際化

はてぶコメントより、typesterさん曰くCatalyst::Plugin::I18N - I18N for Catalyst - metacpan.orgでできるよとのこと。お〜。名前は昔見たことがあったのですが中身まで見てませんでした。今回の話(と次に書こうと思っていた話)のほとんどがCatalyst::Pl…

TypeKey認証をCatalystに組み込む

はてな認証APIをCatalystに組み込む - ヒルズで働く@robarioの技ログ をちょっと修正して、TypeKey認証にしてみます。まずhttps://www.typekey.com/t/typekey/にログインして「Your Weblog Preferences(コメント登録するウェブログの指定)」に「http://loc…

はてな認証APIをCatalystに組み込む

はてな認証APIをCatalystに組み込んでみます。びっくりするほど簡単です。http://localhost:3000/をトップページとして、http://localhost:3000/loginにアクセスするとログイン、http://localhost:3000/logoutにアクセスするとログアウトするようにしてみま…

Catalyst::Request#pathの値に、LocationMatchでマッチした文字列がくっつく(3)

Catalyst::Request#pathの値に、LocationMatchでマッチした文字列がくっつく - ヒルズで働く@robarioの技ログ Catalyst::Request#pathの値に、LocationMatchでマッチした文字列がくっつく(2) - ヒルズで働く@robarioの技ログ というわけで、Catalystにパ…

Catalyst::Request#pathの値に、LocationMatchでマッチした文字列がくっつく(2)

Catalyst::Request#pathの値に、LocationMatchでマッチした文字列がくっつく - ヒルズで働く@robarioの技ログ id:dayflowerさんからコメントをいただきました!サイトの方何度も拝見させていただいています!ありがとうございます! mod_perlかApache APIの…

Catalyst::Request#pathの値に、LocationMatchでマッチした文字列がくっつく

以前からこうなっていたのか記憶が定かではありませんが、 Catalystアプリケーションの http://localhost:3000/test にアクセスしたら、sub test内で $c->req->pathを見ると /%5E/[%5E%5C.]*(%5C?|%24)/testになってしまっていました。これにはビックリΣヽ(゚…

またはまった。default アクションでの args の扱い

sub default : Private { my ( $self, $c ) = @_; shift @{ $c->req->args }; ... } というmizzyさんのhackを施して過ごして来ましたが、アクションの階層を深くした時に意図しない結果になってしまいました。 Controller::Fooアクションで/foo/1にアクセス…

アクションからの戻り値を利用するのはアリ?ナシ?

$cの中を見てごにょごにょ判定するメソッドが書きたいという話です。とりあえずforwardを使って、 sub default : Private { my ( $self, $c ) = @_; if ( $c->forward('is_hoge') ) { } } sub is_hoge : Private { my ( $self, $c ) = @_; return defined $c…

Catalyst::Plugin::ConfigLoaderで環境毎に設定ファイルを用意する

基本の設定ファイルを用意しておいて、環境毎に異なる設定で上書きしたいことが良くあります。その際、ホスト名(uname -nで出るnodename)を使うと便利です。 CatalystなアプリケーションMyAppでMyApp->setupする前に use POSIX; __PACKAGE__->config->{fil…

いつの間にかまたマッチ変数が使われるようになっていました。

Catalyst->setupでマッチ変数が使用されてしまう - ヒルズで働く@robarioの技ログの通りマッチ変数撲滅運動をしているのですが、今回はCatalyst::Plugin::FormValidator::Simpleを使おうとして見つけました。実際にはFormValidator::Simple系ではなく、Da…

覚書:defaultアクションで、余分な(気がする)argumentsが付いてくる件

$c->req->argsにコントローラ名が含まれてしまう件についてどこかで読んだ記憶があって、さっき探し回ってしまったので一応リンクを書き留めておきます。mizzy.orgさんでした。 http://mizzy.org/program/catalystTips01.html やっぱりindexとdefaultの挙動…

CatalystアプリケーションでApache2::Reloadを使えるようにする方法

はじめに Catalystでプログラムの修正を反映させるにはサーバーを再起動する必要があります。Catalyst付属のテストサーバーでは、-rオプションによって更新を自動的に検知して再起動することができます。 ./script/myapp_server.pl -rしかしコンポーネントが…

Catalyst->setupでマッチ変数が使用されてしまうので、

setupでマッチ変数が使用されてしまう"> Catalyst::DispatchType::Regexの読み込み自体をキャンセルしてもいいかもしれない。どうせDispatcherはPrivateかLocalぐらいしか使わないし。キャンセル方法は後で調べよう。 で書いたとおり、Catalyst::Dispatcher:…

CatalystをCGIとして動かす場合のhttpd.confの書き方

CGIでCatalystを使う - pekeqのブログ こういう時こそScriptAliasの出番な気がする。 ScriptAlias /myapp/ /path/to/MyApp/script/myapp_cgi.pl/これで同じような挙動になると思う。 MyApp::Controller::Root#defaultが動くのを確認しただけなんだけど。

Catalyst->setupでマッチ変数が使用されてしまう

Text::Balancedが修正されていました 1.99.0 Thu Nov 16 07:32:06 2006 - Removed reliance on expensive $& variable (thanks John) しまった。パッチ送っておけば良かった。コアモジュールに名前載ったかもしれないのにぃ。 マッチ変数「$` $' $&」がプロ…

Catalystの不満なところ

Modelって必要?効果的な使い道が思いつかない。MVCって言いたいだけちゃうんかと。。。 Apache2::Reloadに対応していない。Catalyst::Engine::HTTP::Restarterだと再起動に時間がかかるし。。。これはかなり痛い。 指定できるURIマッピングが柔軟すぎる。ま…