テンプレートの使い方
ramazeはデフォルトでMVC開発ができる。
$ ramaze --create hoge
により生成した場合、V(iew)を担当するのはview/以下。
とりあえずpage.xhtmlとindex.xhtmlなどが生成されているはず。
大枠はpage.xhtmlに書かれている。これはmain.rbの
layout '/page'
に対応するのかな。
page.xhtmlの中の#@contentsに当たる部分を他のファイル(index.xhtml)とかで書く。
この中ではテンプレートとしてRubyを埋め込むことができる。
テンプレートの基本的な使い方はramaze本家のScreenCastを見れば十分に分かる。
PHPみたいに
<?r @n = 3 ?> <?r foo = @n % 2 == 1 ? "odd" : "even" ?> #{foo}
的なことができるようだ。
テンプレートに内部変数を持ってきたい時にはその名前のメソッドの中でメンバ変数として使える状態にして置いておけばいい。
/fuga/123 であれば
def fuga(num) @n = num.to_i end
などとしておいて
<p>#{@n}</p>
で呼び出すだけで123と表示させられる。括弧は省略可。