CatalystでXslateしてみた
cpanm Text::Xslate
cpanm Text::Xslate::Bridge::TT2Like
cpanm Catalyst::View::Xslate
MyApp::View::Xslate
package MyApp::View::Xslate; use Moose; extends 'Catalyst::View::Xslate'; has '+module' => ( default => sub { [ 'Text::Xslate::Bridge::TT2Like' ] } ); has '+template_extension' => ( default => '.tt', ); has '+cache_dir' => ( default => '/tmp/MyApp/.xslate_cache', ); has '+cache' => ( default => '1', ); has '+syntax' => ( default => 'TTerse', ); 1;
MyApp::Controller::Root;
package MyApp::Controller::Root; .... sub end : Private { my ( $self, $c ) = @_; $c->forward('MyApp::View::Xslate'); }
てな感じであっさりと動いた。 テンプレート側の変更は[% INCLUDE hogehoge.tt %]は[% INCLUDE "hogehoge.tt" %]とかぐらいでした。
1回目の表示はコンパイルされてないので遅い、2回目以降速くなる。