【Perlフレームワーク】Catalystを語る人
Mojo使ってる、というか改造して使ってる。結構好き。
でも軽量かどうかは微妙かもね。
MENTAは軽量だと思う。 日本じゃイマイチだけど海外じゃCGI::Appは結構人気ある。し、たいていのウェブサイトはCGI::Appで十分だと思う。 Catalyst を勉強中です。
モデルをCatalystから分離した方が良いとは
知っていますが、とりあえず勉強中なので、
app_create.pl model で DBIC を作りました。
ところが出来上がった Schema/Result/ 以下の
クラスにメソッドを定義しても呼び出す事が
出来ません。
ログではこのように出ています。
Can't locate object method "foo_bar" via package "DBIx::Class::ResultSet"
見るとResult以下のクラスのベースクラスは
DBIx::Class:Core でした。
自分でも何かとんちんかんな事を聞いている気がするのですが、
Catalyst で ResultSetに メソッドを定義したい
場合はどのようにすればよいか教えていただけますか。
宜しくお願いします。 Schema/Result/以下にテーブルの内容を定義したモジュールがばーっと並んでるんでしょ?
そのモジュールにメソッドを追加すれば、コントローラクラスで、 $c->model('DBIC::User')->foo_bar() とかって呼べるはず。
それが出来ないなら、もっと根本的な所で間違ってる。自分でラッパークラス作ってて、その作り方が間違ってるとか。
>>105
ありがとうございます。
やはりそうですよね。。
そこに追加しているんですが、呼び出せないです。
気になったのはResultSet 云々のエラーメッセージがでてるけど、そこのクラス群はDBIC::Core が親になっている事でした。
モデルは自動生成させているので、手では作っていないです。
何かの手順間違いでおかしな事になってるんですかね。
再確認します。
分かりました。
load_components に ResultSetManager とメソッドに ResultSet 属性が必要なのですね。
Catalyst というよりはまるまるDBICでした。
ありがとうございました。 【Python】Webフレームワーク Djangoスレ Part1
1 :nobodyさん:2006/08/27(日) 02:20:54 ID:yog4uW4e
http://pc11.2ch.net/test/read.cgi/php/1156612854/l50
【Ruby】Ruby on Rails Part9
1 :nobodyさん:2010/02/19(金) 16:13:13 ID:SpWtnpr8
http://pc11.2ch.net/test/read.cgi/php/1266563593/l50
【Perlフレームワーク】Catalystを語る人
1 :nobodyさん:2007/01/10(水) 14:19:45 ID:54lQQlHb
http://pc11.2ch.net/test/read.cgi/php/1168406385/ mod_perlで動かすと「Couldn't render template "file error - hoge.tt: not found"」というエラーが出るんですが解決方法を知ってる人がいたら教えてください。 Foo::View::TT とかで INCLUDE_PATH がめちゃくちゃとか
$c->stash->{template} に変な指定してるとかじゃない?
見てあげるから github に丸ごとアップすればいいよ。 >>111
すみません、GitHubがよく分からずアップできていません。
と言ってもほとんどスケルトンと同じものです。
catalyst.pl App
./script/app_create.pl view TT TT
Root.pmに下記を追加。
sub hello :Local {
my ( $self, $c ) = @_;
}
./rootにhello.ttを追加。
app_server.plではうまくいくんですが・・・ apache(mod_perl)再起動後が遅すぎる・・・。
数アクセスあれば軽くなるけど、それまでが重いのは
何とかならないのでしょうか。
解決策をお教え願えれば幸いです。 startup.plとかで予めロードするといいよ。
共有メモリに入るから効率的になるし。 >>114
某SNSアプリの開発をやり始めたのですが、タイムアウトが非常に短くて
課金周りで失敗するのです。他の人(他の言語)の人はどうしてるのかなと・・・。
>>115
なるほど。その方法で試してみます。感謝 JSPやってたときはリリース時にバッチで全画面叩いてたな perlbrewで素の5.12.2を$HOME以下に作って、おもむろにcpanm Catalyst::Runtime
# Failed test 'No C3 error'
# at t/aggregate/c3_appclass_bug.t line 27.
# died: Can't use an undefined value as a HASH reference at /home/helloworld/.cpanm/work/1294144068.29782/Catalyst-Runtime-5.80029/blib/lib/Catalyst.pm line 2422.
# Looks like you failed 1 test of 1.
これから始まって、テストこけまくり
RT見てもそれっぽいのはないしなあ・・・ 5.8.9で同じようにやったらあっさりインスコできた
5.10.1も>>118と同じ状態になった
こけたテストと5.10.x以上で現象が出るってことは、mro周りが非常にあやしい気がする 5.80030出てたから同じ環境でやってみたがテスト通ってた catalystでIPC::Open2使えないよ。
どうすりゃいいん? CGU::POST_MAXのcatalyst番はないんですか?
Catalyst::Reqeustの$req->read( [$maxlength] )
これでいいんですか?
これをやったんですが
どこでエラー取得で切るんですか?容量こえてたばあい CatalystでApacheように動かしたんですけど
.cgiファイルとか読み込みたいんですが
ソースごと表示されてしまいます
add handler .cgiみたいなのできないんでしょうか?
わざわざ、アクションに追加してcgiやらないといけないんでしょうか?
http://xxxx/hello/xx.cgiで見れるようにしたいです だめなんですか?
xx.cgiっていうファイルもう作っちゃってあるので
そこから取得したデータをjavascriptで使いたいんです
xx.cgiをアクションとして作り直さないとだめなんですか?
xx :Local{} みたいに?
教えてください もうね、なんというか、もっと基礎から勉強したほうがいい <Location /app>
SetHandler modperl
PerlResponseHandler Hello
</Location>
Alias /app/hello /var/www/Hello/root/hello
<Directory /var/www/Hello/root/hello>
allow from all
</Directory>
<Location /app/hello>
SetHandler default-handler
</Location>
CGI::Appもシンプルで今でも使ってるとこは多いけど、今から新しくやるならMojoliciousの方がいいだろうな。
Catalystも高機能なフレームワークだけど、最近はMojoliciousみたいなシンプルな奴の方が流行というか、そういう流れでは。 ところでフレームワークで作ったアプリってCGIで動かすのはおかしい?
PSGI/Plackとかの解説ばかりなんだけど。
LAMP環境、SpeedyCGIで動かしたいんだけどMojo(licious::Lite)が動かないんだよなぁ。(1発目の実行時が)
Template絡みだと睨んでいるのだけど。
そもそもCatalystじゃないからスレ違いなんだけど、やり方分かる人教えて。
遅いレスだが、
http://mojolicious.org/にあるMojolicious::Liteのコードの内、
app->start();
を
app->start('cgi');
にする。
あとは、index.cgiとかのファイル名で保存して、(当然先頭行に#!/usr/bin/perlとか書いてパーミッションは755とかにして)、
CGI実行出来るApacheのドキュメントルート以下に置けば動く。
Mojoliciousの場合でもstart()の引数を'cgi'にすればいいだけ。
Plackupとxxx.psgiとCatalystのアプリのソースがあれば
Catalystとかのモジュールが入ってない環境でも動くんですか?
いま./script/xxx_create.pl PSGIでblog.psgi作ってみたんですが
./script/create_serverってやってるのおなじです
どういうメリットありますか?配布するとき相手がCatalystなくても動くとかですか?おしえてくださいメリット CatalystをRESTfulに書こうといろいろ探していて、
Catalyst::Controller::Resources というのが良さそうなのですが、
最近の記事がないのとこいつ自体のアップデートが2009で止まって
いるので躊躇しています。
1)C::C::Rは良い。updateがないのはC::C::Rは充分枯れているから。
2)C::C::Rは良い。Catalyst自体一段落しちゃったから記事がないだけ
3)みんな既に他のものを使ってRESTful環境を構築している
4)REST自体オワコン
あたりが考えられるのですが、実際のところどうなんでしょう?
perlのフレームワークで悩む時間は無駄。
人間の人生において時間は有限。
その有限な時間を有効活用したいのであれば、大人しく、現在、Web開発において
最も最適な言語であるPHPのフレームワークに関して悩めばいい。
PHPのフレームワークはどれば一番良いのか、と、悩む時間のほうが、
Perlに関わる時間よりも有意義に過ごせるだろう。
限りある時間を無駄にしてはいけない。
perlによるWeb開発の時代は、とっくの昔に過ぎている。
たとえ辛くても、この事実は認識しなければならない。 僕PHPやるね
いまからでもがんばればおいつけるよ PHPは文字コード周りがお粗末すぎて使い物にならない。
えてしてPHPerは間違ったことを吹聴する傾向にある。
おっと、断っておくが僕は全ての言語は平等だと思っている。 「〜は使い物にならない」って言ってる奴自身が使い物にならないのは、よくある話 Perlぐらいだよな。
UTF8フラグなんて
意味不明なものがある言語はw UTF8フラグをdisってるやつで、UTF8フラグを正確に説明できる
やつを見たことがない。つまり存在意義がわかってない。
あれがないとむしろ困るわけだが。 あたらしいことをおぼえてもすぐすたれるから
きそとなるぶぶんをちゃんとかためといたほうがやくにたつんだよ くだらないものを覚える必要はないよ。
他の言語を知ってれば、そんなのなくても
何の問題もないことは分かりきった話だし。 >>153
じゃあなんで俺の隣の島はPHPの文字コードの問題でいつも
揉めてるんだ? UTF8フラグ的なものはPythonにもRubyにもある。ないのはPHPぐらいなもの。 >>154
俺の隣の島でPerlの文字コード問題で
もめてるのと同じだとおおもうよ。 >>155
内部に隠蔽されているなら何の問題もないよ。
Perlの場合、コードの中でUTF8フラグをつけたり外したりして
cpanモジュールに渡さないといけないことが多々あるので
問題になってる。 >>157
Perlの場合、decode/encode周りをよく理解してない厨房が多いだけで
分かってる人が見ればすぐ治る場合が多いが、PHPの場合複雑怪奇な
正規表現書かないとどうにもならないケースが多々ある。
PECL/mb_*が糞すぎてカオス。 >>158
そんなの(PHP以外の)他の言語でも同じ。
バイト列しかないPHP脳だと不思議に思うかも知れないが、他の言語じゃ文字列とバイト列を分けるのは当たり前。
まあ、もっともPHPの場合、このままでいいのかもしれない。PHP6は開発中止になってよかったのかもしれない。
みんな現状で満足してるみたいだから。
>>160
PHPってバイト列と文字列は別って概念ないの?
まだ?
それが問題になって10年以上経ってるのに?
( ゚д゚) PHPのユニコード対応ってあれ以来まったく進展ないらしいね。どうするか検討すらしてないそうだ。 文字コードフラグならまだ意味は分かるけど
UTF8フラグだもんな。 PerlやPythonの多言語処理は、内部の文字列エンコーディングがUTF8(UTF16)と決まってるんだから、UTF8フラグと呼ぶのは正しい。
UTF8はASCIIコードと互換性があるのだから
文字数を数えるとか以外では
区別する必要がないんだよ。
つまりUTF8ならバイト列として処理して構わない。
それなのにいちいち変なフラグつけるなと。 >>165
じゃw_char型ってなんのためにあるの?
>>166
UTF8って表現は俺も意味わからん。
Unicodeフラグの方が正しい
>>168
お前みたいのが迷惑なコード書き散らすんだよ。 Perlの内部表現はUTF8なんだからUTF8フラグと呼ぶのは正確。decode()してエンコードがUTF8であると決定されるんだから。
>>170
内部表現はUnicode(多分w_char)だよ。¥x{FFFF}とかにフラグ立てられるっしょ。 w_charは2バイト限定。
UTF8は1〜6バイト
Unicodeはただの文字集合。内部表現じゃない。
そんなこともしらんのか
>>172
Unicodeのコードポイント0x0000-0xffffをw_charに
突っ込んでるのがPerlの内部表現って意味だけど? 1〜6バイトの可変長文字列を内部表現にしたら扱いにくくて
仕方ないだろjk。 >>173
Unicodeのコードポイントは0x0000から0x10FFFFだ
16ビットに入りきるかボケ >>174
ASCII互換にすることで
扱いやすくしているのを知らんのか。
ASCII互換の意味調べてから出直してこい。 >>178
latin-1かUTF8って書いてあるだろ。
それ以外じゃねーよ。
勉強になったか、初心者よ。 >>179
俺関係ないし。
将来的に変わるかもしれないからプログラマは内部表現に
依存すんなってことでしょ? >>181
Perl の内部表現の一つはたまたま UTF-8 です。 残念ながら、
Perl は秘密を守れないので、このことはみんな知っています。
これが多くの混乱の源です。 内部表現は何か分からないエン
コーディングで、常に明示的にエンコードと デコードが必要
ということにしておいた方がよいです。 Rubyみたいに内部表現のエンコーディングが任意な言語なら別だが、Perlの内部表現はUTF8で固定されてるのでUTF8フラグという呼称になる。
問題は、UTF8フラグありのUTF8文字列と
UTF8フラグなしのUTF8文字列があるということ。
どっちを使うべきか?
はっきりしているのはPerlよりも外に出力するときには
UTF8フラグは無しにするということ。 >>185
>問題は、UTF8フラグありのUTF8文字列と
> UTF8フラグなしのUTF8文字列があるということ。
へえーUTF8フラグなしの文字列があるのか。
UTF8フラグなしはバイト列だと思うがな。 UTF8で書かれたテキストファイルには
UTF8フラグなんてものはついてないが
これをバイト列と呼ぶやつはいない。
お前は常識を知ったほうがいい。 何が言いたいのか分からないが、
PerlじゃUTF8フラグがあるのが文字列で、ないのがバイト列って呼んでる。
PythonでもRubyでも文字列とバイト列は分けて処理する。PHPもPHP6でそうなる予定だった。 Catalystスレのはずなのに、別のスレになっててワロタ Catalyst::Controller::Resources
って最新のCatalystに入らないよね?
RESTfulに書く方法ってないの?
あれ?入ってない?
つい最近セットアップしたものには入ってるな
無意識のうちにcpanmとかで入れたのかも >>193
む、俺の勘違いか。調べてみる。ありがと。 >>193
http://www.cpantesters.org/cpan/report/07333450-b19f-3f77-b713-d32bba55d77f
これと同じ問題でインストールにコケる。
実際にHTTP::RequestでアクセスしてみるとNot Foundが帰ってくるっぽい
HTTP::Requestとかはup to date
君たちフレームワークおぼえてるの
基礎なる部分を覚えたほうがいいよそっちのほうが後々役に立つからね
なんかそういうのすぐ廃れるからやめたほうがいいよ
でもぼくみんなに秘密のやつつかってるけどね自社用の フレームワーク:特製ひろむスペシャル1号っていうやつだよ
>>199
フレームワークを使わないと基礎は身につかないよ。
独自でフレームワークを作り上げる人なら話は別だがw
フレームワークに使われてるアーキテクチャ。
これを理解するには実際に使ってみるのが一番早い。
フレームワークを使ったことがない人は
アーキテクチャの ”基礎” が全くなってない。
>>199
基礎は身につけるもの
フレームワークは利用するもの
技術は何にしろすぐ廃れる物
つかtokuhiromはAmon2もっと力入れてくれ。 僕のミステリアス大作戦にひっかかったみたいだね
Daikuっていうツール
これみんなどんなツールか知りたがってるよ
大工 ほら
きになったでしょ わたしたちが創造するモノを通じて世界の人々をハッピーにすること。それがモバイルファクトリーの存在意義で ハッピーとかいってるけどまじハッピーじゃないです
あれうそです みんな騙されてます
ぼくからも苦情いっときます さようなら 僕一人でここフェイスブックがわかりにつかってるから
みんな無理してつっこまなくていいから
なにかあったらhttp://twitter.com/tokuhiromまでリプしてね
あ、青山ブックセンター 六本木ヒルズ店の存在をいましった トクットクットクットック!!!トックヒローーーム!!! tokuhiromっつってひらがな多めにしてるだけじゃんかw
tokuhiromは中二病をdisるけどここのtokuhiromは自分が中二病 僕年収1500万ありますから
Perlプログラマーですから
中2病じゃないよ 風来のシレンRTしちゃった
土曜に浦安万華郷にお風呂はいりにいくから僕のヌードがみたいひとはきてね cloudforecast を CPAN にあげても結局 rpm とかでいれなきゃいけないモジュールがおおいしあんまうれしくなさそう 僕の好きな食べ物をあててください
tokuhirom 好きな食べ物 でググっちゃったあなた それじゃでません
あひゃひゃひゃひゃ >>204
> 基礎は身につけるもの
> フレームワークは利用するもの
意味がわからんw
利用するものというのなら
フレームワークだけじゃなくて
言語だって利用するものだろ。
利用しないものを使ってどうやって基礎をつける?
ピアノがうまくなりたければ、ピアノを弾く
自転車に乗れるようになりたければ、自転車になる。
実際に利用するものを、使わないで基礎なんて学べないよ。 >>220
マジレスすんなw
>>221
基礎は一生物。フレームワークはその都度使い捨てって意味だが。
> 使わないで基礎なんて学べないよ。
当たり前だろアホか。 みんなおはよう朝ですね今日、も張り切っていきましょう 今週の土曜日はfukuoka.pmに参加します
ぼくもでます
perlわからない人でも理解できるような話をするので、ぜひお近くの方はきてね
みんなきて
きてください 2chみたっていってね
そうすれば僕の70万円以上の書籍の1%の本あげますね ちょっといまサボタージュして2chやってます
上司はオワコンです
上司に勝ちました 僕のプログラミングレベルは上司に勝ってます
みなさん情弱です
上司はしにま Catalystを語る人 っていうのつまらなかったですね
tokuhiromが語るスレにしたほうがいいですよ とくひろむは風邪で休んだので僕が代理で2chするな
何でも聞いてな
カタリストつかったことないですががんばりたいと思うな 8年前くらいは鯖弄ってたのでPerl使ってましたが、最近はWeb開発でずっとPHP、でフレームワークを
使い始めて2年くらいなのですが、故合ってPerlでWebサイトを作らなければならなくなりました。
Perlでも使えるならCatalystを使った方が良いですかね?
そもそも専業PGでもなんでもない上に理解に怪しい面もありますが、Catalystもオブジェクト指向的な
考え方とMVCの概念で作れるもんなんでしょうか。 どういう規模の開発かにもよるな
簡単な物なら、わざわざCatalyst使う必要もないし
8年前だと、まだ日本語使うのにjcode.pl使ってた頃かな
今はjcode.plいらないんですか・・・。
進化してるんですね。 >>231
使って
僕たち本かいたりするだけでお金は要るの
あ、ちなみに
こういう技術を勝手に自作自演で作って、JPAとかxxx.pmで
今流行のPerl〜〜はこれ こういう書き方 この本を買ってね
ってやればいいだけ
おこずかい稼ぎ
ぼくたちが作るものは 便利に見せかけて実はみんなに苦労なことをさせる
お金をもうけるための技術なんだよ
わかってないね
Miyagawa氏と小飼弾氏とかで流行とかPerlの書き方とかなんかそういうの決めちゃって
ネタが尽きないように毎年やって 本かわせてるの あと会場費ぼったくってる知り合いのつかって
きみたち毎年かってくれてありがとね 永遠に続くからこれ
別に便利になることないから君たちの生活 あほくさ あほくせーーPerlやってても働けないからかわいそう 僕ちなみに年収1500万ですから
僕Perlプログラマーですから
君たちとは違います 情弱です
オワコンです MVCでつくれるよCatalyst
何でも聞いてねぼくに PHP使いなよ
地獄みたいんだね苦しそう
そんなPerlのCatalystを学習するなら
いちからPHP覚えてそっちのサンプルとか書籍あさってつくったほうがまとも
すごい時間かかるとおもうよ絶対やめたほうがいいよ
インストールとか設定とかでつみますよ?いいんですか?覚悟してますか?
あららららら 本当にいいんですか? しらけました
終わりです
僕はオワコンでした
もちうまかったなう 本物のtokuhiromに中二病きもいですと言われるレベル。 僕はオワコンです
終わり
tokuhiromは終了しました 僕のとおり名しってますか?
徳永 広夢です
みなさん勘違いしてますね
僕はPerlプログラマーですきやすくメール送らないでください
僕は年収1500万です
僕はPerlプログラマーですから 僕の名前ダサいので英語にしますね
InfinityDreamです
殺 伐 と し た ス レ に ゾ ウ リ ム シ が ! !
_/\/\/\/|_
\ /
< アメーバ!!! >
/ \
 ̄|/\/\/\/ ̄
_____/ ●`丶 、
==ニ───- 、 ,,lll,` 、
/ ,,,,,,,,llllllllll 丶
/ iiiilllllllllllllllll!! │
/ llllllllllllllllll´ │
│ llllllllllllllllllllli │
│ llllllllllllllllllllll │
│ llllllllllllllllll´ /
丶 ミカヅキモ´´`ll /
丶 iillll /
丶 !!!!iiill!´ /
`丶───__│
\
\
┏━━━┓ ┏┓ ┏━━┓┏┓ ┏┳┓┏━━┓
┗┓┏┓┃┏━━┛┗┓┗━━┛┃┃ ┃┃┃┃┏┓┃
┃┣┛┃┗━┓ ┏┛┏━━┓┃┗━┓┗┻┛┃┃┃┃
┃┣━┛ ┏┛┃┃ ┗━━┛┃┏━┛ ┃┃┃┃
┃┃ ┏┛┏┫┃ ┏━━┓┃┃ ┃┗┛┃
┗┛ ┗━┛┗┛ ┗━━┛┗┛ ┗━━┛ 殺 伐 と し た ス レ に ラ ン ボ ー が ! !
__ , ―― '  ̄ ̄ ̄ ̄`――、___ _/\/\/\/|_
/ ̄ ̄__________ ) ) ) `\ \ /
( ,/' ! i l l l l | | | | l l l l l !i`~ーー、、 \ < エイドリアーン ! ! >
ヽ_ (〆――――-〜//⌒~ヽヽミシヽ、`ヽλ__l / \
、 ~ λλ___、丶ヽ/'~ヽ、。~ハwwヾ 〉〉  ̄|/\/\/\/ ̄
`、ー―――――-丶// /⌒~⌒ヽ、ヽ、 `ーヽく〃 ,//
 ̄ ̄ ̄ ̄ ̄ ̄~`( | λ\ヽ冫ノ,冫~ 《丿/
、 、_______| | \__丶´/lノ冫 l /
` ー――ヽニ_ーl\_、\\\冫 /,〆
`ヽl\___ ̄ \ヽ\ /ノ/
、`――――――ヽ\__ ̄ ̄、, \ヽ\ ,/イ/
 ̄ ̄`――、_ー、!\_ ̄ ̄ノ \ヽ∨'〃/
 ̄\ 〉 ノ 〉 ヽο冫
,〉// ノ,| ~~
(/,/ '/'l デデンデンデデン
_____◎__ ____ __
| | | | .| 囗囗| | ̄ ̄ ̄|
|____ | | | __. r┴―――‐┴┐/ ./_ |
| | | | | | |___ __|く / \_| | | ̄ ̄ ̄ ̄ ̄|
___/ ./ | | / ./ __| | \/、 / |_____|
| / | | ̄ / | / | ̄ ̄ /
|____/ | | / .|__/ |____/ そもそもCatalyst以外のPerlフレームワークについて2chで語る場がないのもおかしい 誰でも簡単にネットで稼げる方法など
参考までに、
⇒ 『半藤のブブイウイウレレ』 というサイトで見ることができます。
グーグル検索⇒『半藤のブブイウイウレレ』
W93QBDUAEQ