Railsの簡潔なテンプレートシステムMalline


この間、railsのテンプレートシステムはdjangoほど使いやすいと聞きましたが、実はrailsにも比較的簡潔で使いやすいテンプレートシステムMalline http://www.malline.org/があります.MallineはRailsフレームワークのために設計されたテンプレートシステムであり、テンプレートシステムMakeabyからインスピレーションを得た.Mallineは組み込みテンプレートシステムではなく、新しい言語テンプレートシステムではなく、純粋なRuby言語を使用してテンプレートコードを記述する.最初からこのテンプレートは本当に素晴らしいと思っていましたが、次はdocに基づいて作ったstep by stepプロセスです.
 
まず、Mallineをプラグインとしてインストールします.
ruby script/plugin install http://svn.malline.org/stable/malline
 
最後に config/environment.rbにrequire'malline/rails'を追加すると、インストールが完了します.
 
docによって2つの例をテストして、注意して直接.rhtmlファイルを.mnファイルに変えて、railsは直接.mnファイルをレンダリングして、まずMallineはhtmlラベルの書き方を大幅に簡略化して、しかもネストをサポートして、例えば:
 
div do
    span 'text'
    div 'foo' do
        span 'bar', :style => 'color: red'
    end
end

   :
 <div>
    <span>text</span>
    <div>
        foo<span style="color: red">bar</span>
    </div>
</div>
 

 
 erbテンプレートのようにblockに変数を入力し、後で使用することができます.例えば、次のようにします.
 
@foo = capture do
    div do
        img :src => '/images/image.png', :alt => 'nice image'
        br
        span.caption 'Taken at the location of the event'
    end
end
   :
<div>
    <img src="/images/image.png" alt="nice image"/><br/>
    <span class="caption">Taken at the location of the event</span>
</div>

 
 
      以上は私の実験の2つの例であり、http://www.malline.org/featuresを参照してください. ,ダウンロードしたプラグインには多くのテスト例が含まれています.また、erbテンプレートとmallineテンプレートを1つのシステムで混用したり、mallineテンプレートでerbテンプレートを参照したりすることができます.例えば、すでに1つの_one.rhtmlのテンプレートであれば、.mnに<%=render:partial=>'one'%>を加えることも可能です.