そんな今日この頃でして、、、

コード書いたり映画みたり。努力は苦手だから「楽しいこと」を探していきたい。

Mojolicious::LiteでXslate使ってみたメモ

nginx.confいじってgitlab・redmine・mediatombをサブディレクトリで運用しようとしたけど、どうにも上手くいかなくて心が折れたので、表題のメモでお茶にごし。

やってみれば単純な話だったので世間的には書くまでもないということだと思うけど、ググっても古かったり部分的だったりでドンピシャな情報が引っかからなくて僕はちょっと戸惑ったので(^^;


Mojolicious::LiteはPerlの軽量WAF。

個人的にお気に入り。

管理画面づくりとmojoな話 - そんな今日この頃でして、、、


Xslateは軽量なテンプレートエンジン。

最近周辺で何かと使われてるので、使っておきたいなーと。


1.なにはともあれモジュール追加

一応。

# cpanm MojoX::Render::Xslate

関係するモジュールが多いのか、割と時間かかった。

2.lite_app内での記述

plugin 'xslate_renderer';を記述。

#!/usr/bin/env perl
use Mojolicious::Lite;
plugin 'PODRenderer';
plugin 'xslate_renderer';

DATA以降のxxx.html.ep系をxxx.html.tx系に書き換える、もしくはtemplatesディレクトリ以下にxxx.html.txみたいな感じにテンプレートファイルを用意する。(個人的には後者の方が好き)


古い情報だとゴニョゴニョやってたりするけど、こっちはこのままでOKみたい。

 $self->render('index');
+α. ヘッダーとかフッターとか

どうやらプラグインのとこでハッシュでオプション渡せば良いらしい。

ちなみにこっちはファイル名フルで。

plugin 'xslate_renderer' => {
  template_options => {
    header => ['header.html.tx'],
    footer => ['footer.html.tx'],
  }
};

僕はXslateて業務の管理画面で使う最低限の書式を把握してる程度だったので、改めて検索するとブロックとか色々便利そうな機能が用意されてることに驚くのな。