Catalyst
ヤバいことしてまいました。 $c->model('DB::Foo')->delete({id=> $id }); 上記のコード、全データ消えます。orz... 知ってたのに、きづかずに書いてた。 $c->model('DB::Foo')->search({id=>$id})->delete(); これが正解。これは、最高級にヤバイ不具合を作…
http://search.cpan.org/~agrundma/Catalyst-Plugin-RequireSSL-0.06/これ使うでもよかったのかなぁ。でもこれって、設定してないページは、もとにもどしてくれるのかな。 今度試そ。
今日、固定長のフィールドのテーブルをあつかって、はまった。trim がいるようです。 まぁ、実際には固定長の長さにしてから検索か。 my $a = $c->model('Foo::Boo')->count({ 'trim(bar)' => 'a12345' });
プライマリーのないテーブルとか、ようわからんテーブルがいっぱいあって、必要なやつだけ読み込みたいというのが、ヘルパーをそのまま使うと、多分できない。直接、コードを変更して、対応するしかないっぽい。 Catalyst::Helper::Model::DBIC::Schema; #..…
Regexを、LocalRegexと間違えて使うとひどい目にあう。ビビった。
http://www.cafepress.com/catalystdev
以下のようにするとエラーでこけるなぁ。ソースを見ると、0.02だといけるっぽいなぁ。 なんか間違っとるかなぁ。 if( $c->flavour eq 'csv' ) { } "Operation "eq": no method found, left argument in overloaded package Catalyst::Plugin::Flavour::Data,…
[% obj = c.forward('Model::Funky::Categories' , 'list' ) %] てかいてたんだけど、実際 [% obj = c.forward('Funky::Categories' , 'list' ) %] モデルがあるとだめっぽい。ありゃ。
http://www.cafepress.com/catalystdevやべ。欲しいかも。
テーブルにフィールドの追加を定期的に行ったりするんで、よくスキーマクラスを作り直すんやけど、 スキーマクラスに手を加えてたら、マージ作業が必要なわけで。それがだるいから、今のところ何もコードいれとらんのやけど、 やっぱり、手を加えた方が便利…
最近落ち着いたコントローラーフロー。確認があるときは、もう一つ増えるけど。 みんなどうやってんねやろ。 sub foo : Local { my ( $s, $c) =@_; # do somthing for form. if( $c->req->method eq 'POST' ){ $c->detach('do_foo'); } } sub do_foo : Priva…
Catalyst::Model::CacheFunky::Loaderを、TT内で使用するさいには、modelを直接呼ぶとうまくいかない。 [% obj = c.model('Funky::Categories').list %]forwardを使用するとうまく行きます。 [% obj = c.forward('Model::Funky::Categories' , 'list' ) %]
そればっか考えてる。今更かもしれんけど、Catalyst::Plugin::PageCacheがとてもクールやな。 Catalyst::Plugin::Authenticationと併用を考えられたコードついてるな。user_exists はたぶん、Authentication用。 return $c->NEXT::dispatch(@_) if ( $c->con…
パブリッシュしてみた。http://search.cpan.org/~tomyhero/Catalyst-Model-CacheFunky-Loader-0.01/
http://tomyhero-perl-module.googlecode.com/svn/trunk/Catalyst-Model-CacheFunky-Loader/結局名前は、Catalyst-Model-CacheFunky-Loader にしようかと。 現在の問題点 Funkyクラスを複数にわけて管理できるんだけど、結局名前は変えてないからどうなのと…
http://d.hatena.ne.jp/kopug/20070527/1180270363ウーン。こんな感じはどうなんだろう。以下脳内プログラミングで動かんけど。 Package MyApp::Web::M::Cache; use strict; use base 'Catalyst::Model::CacheFunky::Loader'; __PACKAGE__->config( dbic_sch…
ログをカラフルにしてくれるモジュールをUP。デバッグ時にちょっと便利。 色の文字がログに書かれるのがいやな人は使わない方がいい。まだ反映されてないので、ここからでも手に入れれます。 http://tomyhero-perl-module.googlecode.com/svn/tags/
__PACKAGE__->config( file => __PACKAGE__->path_to('conf.d') ); これやると、拡張子が、.d だと判断して死亡。 __PACKAGE__->config( file => __PACKAGE__->path_to('conf') ); これでいっか。
以前、Catalyst::Component::ACCEPT_CONTEXT をコントローラで継承すれば $c が取れるといったんだけど、 複数のコントローラを継承すると取れなくなるな。orz...試したスクリプト。 :-) package Nyan::BaseController::A; use base qw(Catalyst::Controller…
サーバの時間を入れる時には、良いかも。 __PACKAGE__->load_components(qw( TimeStamp ... Core )); TimeStamp ... Coreの順番を変更すると動かないので注意。
http://474.at/lab/ExtendingCatalyst.podプラグインを作ったら、コントローラかアクションにした方がベストプラクティスってメーリングで言われたので、色々考えてたんやけど、 作ってたやつは、どっちかっていうと、プラグインで良い気がする。 で、勝手に…
ぎゃー。よく考えたら、この二つのスコープが違うから同じようにつかえんよな。 プラグインの方は、必ず1回しか動かんけど、コントローラの方は、継承してるのが複数あったら、1回以上動くやん。 コントローラのnewは使うんやったら、コントローラ依存の物…
コントローラの拡張モジュールって、複数同時に使うのはよくないのかなぁ。Catalyst::Controller::new が NEXTする仕様なんだけど、それがまずいなぁ。Catalyst::Controller::FormBuilderがベストプラクティスということで、 みてたんだけど、newを使ってる…
0.03010 Thu Mar 29 12:36:19 UTC 2007 - Workaround for new incompatible changes in DBD::mysql's "tables" method, which was causing us to find no tables w/ DBD::mysql 4.002+ - Fixed quoting problem in _table_columns (could cause crash when d…
Catalyst::Component::ACCEPT_CONTEXTこれで、$cにアクセスできるなぁ。でも、model , view でってかいてあるなぁ。controllerもこれでいけるなぁ。他にいい方法があるのかなぁ。例: package CatalystX::Controller::FormValidator; use strict; use warning…
C::C::FormBuilderがベストプラクティスって教えてもろたんやけど、$cはActionでとってるなぁ。http://search.cpan.org/src/NUFFIN/Catalyst-Controller-BindLex-0.03/lib/Catalyst/Controller/BindLex.pmこのモジュールやと、 sub _get_c_obj { # used to f…
http://474.at/lab/ExtendingCatalyst.podプラグインはできるだけ作らない方がいいみたいやな。やっぱり。 ある程度できたPluginがあるんやけど、コントローラー型に修正しよ。http://tomyhero-perl-module.googlecode.com/svn/trunk/Catalyst-Plugin-FormVa…
リリースされたよう。
getがあるのに、postがないのは辛いぜよ。はぁ。拡張するかなぁ。 楽なやりかたしっとる人教えて。
この組み合わせでSegumentFaultが出てしまう問題があったのですが、起こらなくなった...アパッチに組み込んでいたPHPを取り除くと解決した。 なんじゃそれ。ようわからんが、勘弁してほしい。