NB Jogger's blog

NBが好きなのです

Catalystのインストール

2008-05-29 01:04:28 | Catalyst
今回は、PerlのMVCフレームワーク、Catalystのインストールについて書きます。

条件:CPANが使えること(ActivePerlのPPMは別のアプローチで)

まず、次のコマンドにより、関連するモジュールをインストール。
perl -MCPAN -e "install Module::Find Path::Class"


次に、Catalystのインストール。
Catalystのモジュールはたくさんあるけど、どれでもよさげ。
perl -MCPAN -e "install Task::Catalyst"


インストール時に、関連モジュールのインストールに対するyes/noの質問がでて、yesを連打しなくてはならない。
これら全てに"yes"を自動で答える場合の方法、とりあえず2つ

環境変数を設定する場合
環境変数にPERL_AUTOINSTALLに--defaultdepsをセットする


パイプを使う場合
yes | perl -MCPAN -e 'install MODULE_NAME'




参考文献

  • [ThinkIT] 第1回:Catalystの導入 (2/2)
  • http://www.thinkit.co.jp/cert/article/0609/4/1/2.htm

  • CatalystやPlaggerのインストールでyes連打をしたくない - bokut.in
  • http://bokut.in/mt/2007/01/catalystplaggeryes.html

  • guro_chanの日記 : CPANモジュールのインストールに於いてすべてのプロンプトに自動でyes若しくはデフォルト設定で応答したい
  • http://backslash.ddo.jp/wordpress/index.php/archives/73


罪作りなCatalyst

2008-05-28 00:39:22 | Catalyst
仕事の配属が決まったわけで。
希望は通らなかったけど、現時点での実力からすれば当然かぁ。
別にそこまでこだわってなかったのでいいです。
配属先でがんばる。

研修中は一生懸命Catalystを習得したけど、配属先で結局使わないことが判明。
ションボリ。

でも、CatalystのO/Rマッパーだとかは使いづらくて、
「SQLを直接弄らせろ~」
とか思ってたので、ラッキーといえばラッキー。

まぁ、MySQLやDBの知識がイマイチなのが原因かもね。
prefetchとか理解できてないので・・・。
その辺が理解できればちゃんと使えるのかなぁ?
現時点では、ちょっとデータを引っ張ってくる場合の利便性は認められるけど。


CatalystとはPerlの開発フレームワークのこと。
MVC(Model, View, Controller)フレームワーク。
 Model:スキーマの定義、DBのやり取りの定義
 View:TemplateToolkitを使って表示部分を作る
 Controller:入出力の処理、一般的には「プログラム」と呼ばれるところ

DBからデータを引っ張ってくる場合

my $result = $c->model('DBIC::Book')->search(
    {bookid => 100},
  );

で持ってこられるけど、集約関数の使い方が面倒。
今は覚えてないのでそのうち書きます。

彼ら(主に広報担当)が見てるのなら、是非導入を考えてみたらどうかと思う。
(正直、ヘッダー、フッターをサブルーチンで出力するのは効率が悪いと思う。せめてテンプレ上でやるようにした方が。今はどうなってるのか知らないけど。)