Sails のテンプレート・エンジン Viento
「Sails」 のプレゼンテーション層を担うのは、「Viento」 という 「Velocity」 によく似た感じのテンプレート・エンジンです。いや、"よく似た" というのは言い過ぎですね。「Viento」 を開発する際に 「Velocity」 を参考としたのは間違いないと思いますが、両者の書式は以下のように異なっています。
【Velocity の例】
#set($hoge = "Velocity")
#foreach($item in $list)
$item.name
#end
#if($bmi < 20.0)
やせ気味です。
#elseif($bmi < 25.0)
標準です。
#else
肥満です。
#end
【Viento の例】
$set(hoge, 'Viento')
$list.each (item) [[
$item.name
]]
$if ($bmi < 20.0) [[
やせ気味です。
]].elseif ($bmi < 25.0) [[
標準です。
]].else [[
肥満です。
]]
「Velocity」 においては "#" と "$" の2つの記号が特別な意味を持っていますが、「Viento」 においては "$"
記号のみが使用されます。些細な違いに思われるかもしれませんが、このことにはたいへん重要な意味があるようです。詳しくは関連情報の「Viento:
The Binding」をご参照ください。
なお、"Viento" という名称は、スペイン語で "風" を意味するようです。 "Sails" (帆)に風を受けて前に進むというイメージなんでしょうね。
関連情報
・Open
Sailing ? Blog Archive ? Viento: The Binding
・Velocity
- Velocity User Guide
・Velocity:第1回:汎用テンプレートエンジンVelocity