タグ

perlとtemplateに関するjamadamのブックマーク (7)

  • Mojo::Templateで自分好みのテンプレートクラスを作る - エンジニアブログ - スカイアーク

    こんにちは。須釜です。 今日は、Mojoliciousに同梱される便利なモジュール群の中からMojo::Templateを紹介したいと思います。 Mojo::Templateはテキストの中にPerlコードをそのまま書いてしまおうという趣旨のテンプレートエンジンです。実際にはMojoliciousのフレームワークの標準のレンダラーのバックエンドとして使われるのみで、単体で使おうとする人はあまりいないかも知れませんが、少し工夫すると結構便利に使えそうです。 下記のようなデータがあって、テンプレートで出力したいとします。 my $people = [ {name => 'Sato', age => '30'}, {name => 'Saito', age => '30'}, {name => 'Suzuki', age => '30'}, ]; printfを使って書くと、こうでしょうか。 my

  • 第43回 Text::Xslate:永続環境に特化したテンプレートエンジン | gihyo.jp

    TTの体を差し替える 前回はウェブ業界で標準的に使われているTemplate Toolkitをより安全に使うためのカスタマイズ方法をいくつか紹介しました。しばしば批判の対象となってきたエスケープの問題については、TTでも適切な拡張を施せば後発のモジュールと遜色ないか、それ以上に便利に使えることは確認できたかと思います。 ただし、エスケープの仕方ひとつとってもさまざまなやり方があったように、TTは、柔軟である代償として速度面ではかなりの不利を抱えています。 もっとも、不利といってもそれはいまの、しかもかなり規模の大きな現場の視点で見たときの話で、数年前、おもなライバルがHTML::Mason(と、機能面で大きな差があるHTML::Template)だった時代にはTTも十分に高速といえましたし[1]⁠、中小規模のサイトではいまでもTTで十分なレスポンスは得られます。 また、かれこれ10年近く

    第43回 Text::Xslate:永続環境に特化したテンプレートエンジン | gihyo.jp
    jamadam
    jamadam 2011/07/22
    コメントを入力してください (省略可能)
  • 第42回 Template Toolkit:Perl製テンプレートエンジンのデファクトスタンダード | gihyo.jp

    組み合わせ自由なツールキット Template Toolkit、通称TTは、その名前からもわかるように、もともとは単なるテンプレートエンジンではなく、テンプレートエンジンをつくるためのツール群をまとめたものです。そのツール群を組み合わせた標準のエンジン、標準のフロントエンドと呼べるものもありますが、これはあくまでもTTのよくある利用法のひとつであって、そのすべてではありません。 たとえば、CPANにはApache::Templateという、TTのエンジン部分をmod_perl用にカスタマイズしたうえでmod_perl用のフロントエンドをかぶせるモジュールがありますが、これを使えば、最初に多少の設定は必要になるものの、あとはTTのテンプレートを適切なパスに置くだけで、パラメータの取得からルーティング、レンダリングまでよしなに計らってくれるようになります(TTの文法をサポートしたPHPのような

    第42回 Template Toolkit:Perl製テンプレートエンジンのデファクトスタンダード | gihyo.jp
  • 第41回 HTML::Template::Pro:テンプレートに極力コードを書かせたくないときは | gihyo.jp

    何でも埋め込めるのは楽ですが 前回紹介したHTML::MasonやText::MicroTemplateのように生のPerlコードを埋め込めるテンプレートエンジンは、Perlをよく知っている人が画面の設計からウェブアプリケーションのコーディングまでひとり(ないし、よく統制のとれた少人数のチーム)で行うときには非常に手軽で便利なものです。 ただし、なんでも書けるからといって、たとえばテンプレートの中でO/Rマッパのメソッドを直接呼び出すコードを書いてしまうと、そのテンプレートは(利用するO/Rマッパの性質にもよりますが)おそらく実際に動作するデータベースやそれに付随するテストデータを用意しないと、途中で「Can't call method "..." on an undefined value」などのエラーが発生してレンダリングできなくなってしまいます。また、アプリケーションの設定にあわせて

    第41回 HTML::Template::Pro:テンプレートに極力コードを書かせたくないときは | gihyo.jp
  • 第40回 Text::MicroTemplate:得意分野なんだからPerlを使えばいいじゃない、という方に | gihyo.jp

    モダンPerlの世界へようこそ 第40回Text::MicroTemplate:得意分野なんだからPerlを使えばいいじゃない、という方に テキストの整形はPerlの基 Perlは「Practical Extraction and Report Language」とも呼ばれるくらいで、正規表現などによる情報抽出機能と並んで、レポートの形を整えて出力する機能はPerlの根幹をなす部分といえます。もちろんそのもっとも原始的な形は二重引用符でくくられた文字列のなかにそのまま変数を埋め込むものです。 print "This report is created by $author."; もう少しこったことをしたければ、Cから受け継いだprintf系の構文を使えばよいでしょう。 printf "This report is created on %04d/%02d/%02d.", $year, $

    第40回 Text::MicroTemplate:得意分野なんだからPerlを使えばいいじゃない、という方に | gihyo.jp
  • Text::PSTemplateをrequireできるようにした- jamadam weblog2

    jamadam
    jamadam 2011/03/09
    ブログ書いた
  • Perl製の小悪魔テンプレートエンジン「Text::PSTemplate」- jamadam weblog2

    小悪魔はうそです。Perl製のテンプレートエンジンを再発明しました。「Text::PSTemplate」です。 ひたすら変数や関数を書き込むのがメインのテンプレートエンジンです。ore_blog_ore_format_list1(category => 'fuck')みたいなアプリ固有の関数を作って、制御構造はそっちでやるのが手っ取り早いと思ってます。とはいえ、コアプラグインってものがあって、if文、each文、switch文、if_in_array文などの制御構文、ファイルのinclude、Django風テンプレート継承などの機能も使えます。あと、PHPのテンプレートエンジンDwooの機能を少しだけ移植してみたサンプルプラグインもあります。 PurePerlで依存モジュールもたぶんClass::C3くらいです。少なくともPerl5.8.8以降では動きます。5年前から使ってますがアルファバ

    jamadam
    jamadam 2011/02/27
    ブログ書いた #perl
  • 1