フィルター

Amrita2は filterという機能によって、与えられたデータを変換して出力することができます。

  specify "Format" do
    t = Amrita2::Template.new <<-END
      <<:a|Format['(%-4.2f)']>>
    END
    
    t.render_with(:a=>1234.56).should_be_samexml_as('(1234.56)')
  end

Formatが標準で用意されているフィルターの一つで、これによってデータの出力形式を指定します。

フィルターは、次のようにいくつでも連結することができます。

  specify "Default and Format" do
    t = Amrita2::Template.new <<-END
      <<div<
        <<span class='number':a|Default[0.0]|Format['(%-4.2f)']>>
      >>>
    END
    t.render_with(:a=>[1234.56,nil,-7890]).should_be_samexml_as <<-END
      <div>
        <span class='number'>(1234.56)</span>
        <span class='number'>(0.00)</span>
        <span class='number'>(-7890.00)</span>
      </div>
    END
  end