※上記の広告は60日以上更新のないWIKIに表示されています。更新することで広告が下部へ移動します。


  • 概要
Catalyst(カタリスト)はPerlのウェブアプリケーションフレームワークです。

  • インストール
○Perlのインストール
$ yum install perl

○MySQLのインストール
$ yum install mysql-server
$ yum install mysql-devel

下記のサイトを参考に初期設定を行って下さい。

データベースサーバー構築(MySQL) - CentOSで自宅サーバー構築
http://centossrv.com/mysql.shtml

○Catalystのインストール
Catalyst(カタリスト)をCPAN(シーパン)からインストールします。

CPANシェルを起動します。
初回起動時にCPANの設定を行う必要があります。
ダウンロードサイトは「Asia - Japan」のミラーサイトを選択し、それ以外は全てデフォルトの設定で構いません。
$ cpan

依存するモジュールを自動でインストールするように設定します。
cpan> o conf prerequisites_policy follow
cpan> o conf commit

Catalystのモジュールをインストールするために必要なYAML(ヤムル)モジュールをインストールします。
cpan> install YAML

Catalyst::Runtime(ランタイム)、Catalyst::Devel(開発ツール)をインストールします。
cpan> install Catalyst::Runtime
cpan> install Catalyst::Devel

必要に応じて下記のモジュールをインストールします。
Catalyst::View::TT
Catalyst::View::JSON
 
Catalyst::Model::DBIC::Schema
DBD::mysql
DateTime::Format::MySQL
Catalyst::Model::DBI
Catalyst::Model::Adaptor
DBIx::Class::Cursor::Cached
 
Catalyst::Plugin::Session
Catalyst::Plugin::Session::State::Cookie
Catalyst::Plugin::Session::State::File
Catalyst::Plugin::Authentication
Catalyst::Authentication::Store::DBIx::Class
Catalyst::Plugin::Authorization::Roles
Catalyst::Plugin::FormValidator::Simple
Catalyst::Plugin::FormValidator::Simple::Auto
FormValidator::Simple::Plugin::Japanese
Catalyst::Plugin::FillInForm
Catalyst::Plugin::Cache
Catalyst::Plugin::PageCache
Catalyst::Plugin::I18N
 
Catalyst::Controller::ActionRole
XML::Simple
Config::Tiny
Test::Base
Test::Pod::Coverage
cpan> install XXX
...

CPANシェルを終了します。
cpan> exit

  • ヘルパースクリプト
○スケルトン(アプリケーションの雛形)の作成
catalyst.pl アプリケーション名
$ catalyst.pl MyApp

○アプリケーションの起動
(アプリケーション名)_server.pl -r -p 3000
$ ./script/myapp_server.pl -r -p 3000

オプション
r:ファイルが更新されたときに自動的に再起動する
p:ポート番号(デフォルトは3000)

ブラウザで下記のURLにアクセスし、正常に動作していることを確認します。
http://localhost:3000/

※終了コマンドはありませんので、「Ctrl + c」でプロセスを終了させて下さい。

○コントローラの作成
(アプリケーション名)_create.pl controller コントローラクラス名
$ ./script/myapp_create.pl controller MyController

○ビューの作成
(アプリケーション名)_create.pl view ビュークラス名 ヘルパー名
$ ./script/myapp_create.pl view TT TT

※TTSiteヘルパーを使用すると共通テンプレートの作成を自動化できます。
$ ./script/myapp_create.pl view TT TTSite

○モデルの作成
(アプリケーション名)_create.pl model モデル名 ヘルパー名 スキーマクラス名 スキーマクラスの生成方法 データベース接続文字列 ユーザー名 パスワード オプション
$ ./script/myapp_create.pl model MyDB DBIC::Schema MyApp::Schema create=static dbi:mysql:mydb myuser mypass AutoCommit=1 on_connect_do='["SET NAMES utf8"]'

オプション
AutoCommit:自動コミットを有効にするか
on_connect_do:データベース接続時に実行するSQL命令

○アプリケーションのテスト
(アプリケーション名)_test.pl URLパス
$ ./script/myapp_test.pl "/myapp/mycontroller"