久しぶりのえんとりー
めがねのひとに触発されてオレオレポリシー。
Re:Catalystアプリオレオレポリシー
仕事も個人もCatalystなんで、特にポリシーは分けてない。
会社のみんなも俺のポリシーでやればいいのに。
久しぶりのえんとりー
めがねのひとに触発されてオレオレポリシー。
Re:Catalystアプリオレオレポリシー
仕事も個人もCatalystなんで、特にポリシーは分けてない。
会社のみんなも俺のポリシーでやればいいのに。
とか書いてあげれば使えます。Log::Dispatch: -class: File file:__path_to(debug.log)__ min_level: debug mode:append
Amazonの新刊をAtomFeedで取得するサービスを作った。
いつも新刊が出てないか本屋に見に行くのが面倒だったのと、
気づかなくて買い忘れるとかよくあったから。
しばらく時間たって見ないとちゃんと動いてるかわからないけど、とりあえずこんな感じ。
↓
http://www.bindstorm.jp/anbs/
BloglinesとかRSSリーダ使ってる人は試してもらえると助かるっす(テスト丸投げ)
んー 実に2ヶ月ぶりの登校 じゃなくって投稿・・・
たまに人生という名の敵軍に投降したくなりますね。
んで、何かというとCatalyst-Plugin-UploadProgressを触りまして・・・
あのアップロードのプログレスバーをアップロード以外でも使いたいな!と・・
Catalyst-Plugin-UploadProgressからすごい勢いでパクリました。
Catalyst-Plugin-BasicProgress-0.01.tar.gz
ごめんなさい。
ドキュメントとかまったく何も書いてません。
Module-Starterが吐き出したやつそのままです。
サンプルCatalystアプリがついてるので感じてください。
基本的にバックグラウンド処理に入りたいところで$c->go_progress_fork(オプションほげほげ)と呼んでやるだけです。
UploadProgressと同様Cache系のプラグインが必須です。
さすがにこれはパクリすぎだからCPANにはあげないでおこう・・・
追記
うまいことプログレスバーの画面に飛ばない場合は、
go_progress_forkの直後に
my $time = time; for(my $now = time; $now < $time + 10; $now = time) { # do nothing }
等sleep以外のwaitを入れてみてください。
脳みそ整理も兼ねて。
Catalystのstashが全体共通なのが気に食わなくて何とかしようとPluginを書いていたのだが・・・
どうやって切り分けたものか。
$c->forward()で呼ばれたactionでは、そのactionのクラスにしたいんだよね
/hoge stash()->{'hoge'}->{'template'}
$c->forward('fuga') stash()->{'fuga'}->{'template'}
$c->forward('moge') stash()->{'moge'}->{'template'}
って感じで
caller × TT内部から呼ばれるとCatalyst::View::TT
ref($c) × 意味無し
$c->namespace() × 常に現在のactionのnamespaceぽ
$c->stack()->[-1]->namespace × TT内部から呼ばれるとMyApp::TT
動き的にTTにforwardしてるんだからTTになるに決まってるんだが、
うーーーん
Catalystのserver.plから起動する開発用サーバー。
IEからPOST送るとフリーズするんだが
何とかならんのかな・・・
mozilla系からなら問題ないぽ
環境はVine3.2+Perl5.8.2でEUC_JP
環境のせいかとも思ったんだけどcoLinux上のCentOS4.2でも一緒ぽ
どうもaccept(だっけ?)で凍るみたい
2005-11-23追記
Catalyst 5.57で直ったっぽい。
server.pl -k でkeepaliveをonにしてくれ とのこと。
なんか相変わらず挙動微妙っぽいけど、取りあえずは動くっぽい
Catalystのredirectが使いにくい。
アプリケーションのルートがサーバーのルートじゃないとちゃんと動かない。
つまり、
http://myapp.mydomain.org/ - ○
http://www.mydomain.org/myapp - ×
ってことらしい。
CPANにこれ直すモジュールあるかなー?と探したら なんか見つからない。
ので作った。
Catalyst-Plugin-Redirect-0.01.tar.gz
$c->redirect('hogehoge')とかやるとよしなにしてくれる。
$c->get_baseurl()で/myapp/が取れる。
あとでCPANにあげようかと思うけど、需要あるのかなぁ?
備忘録的なメモ
勉強せな・・
・Scaffoldがしょぼすぎる
・DBのエンコードとの関連
(DBがEUC フロントがUTF-8だと化ける DBをUTF-8にするとおかしくなるところがある)
(むしろフォームだけ化けるからTTかClass::DBI::AsForm Class::DBI::FromFormあたりか?)
・TTの入れ子の仕方
・Class::DBI::AsForm Class::DBI::FromFormじゃ使いものにならない
・各ControllerClassにて自分自身用Configを取り込む方法
・ControllerからControllerを呼ぶ仕組み
・なんで$c-res->redirectはアプリケーション名を補完しないんだ
ってか、サーバールートでしかちゃんと動かない とか あほかと