Slimというよさげなものが出てきて、是非とも流行ってほしいところですが、Sinatraに搭載されるのは次のリリースかららしいですし、僕はまずHamlをSinatraで使うのも覚束ないので、練習がてらに、
ここ↓に載ってるSinatraとerbを使ってのHello Worldのerb部分をHamlで書き直してみた。
http://gihyo.jp/dev/serial/01/ruby/0009?page=2
これが元のコード
そしてこれがHamlを使って書き直したもの。
「template :layout」には、htmlタグとかみたいな、各ページに共通する、まさにテンプレ部分を書くらしい。
ページによって無効にしたいときは、「haml :layout => false」してやればいいようだ。
ちなみに各タグに¥nとかの改行コードをつけてやれば、erbみたいに1行で書くこともできるけど、やってみたら気持ち悪い&見辛かった、のでこういう風にした。
インデントは全体的にちょっと気持ち悪いけど、Hamlはインデントに意味を持たせてるから下手にいじるとエラーが出ちゃう。
SinatraでHamlを使うときは、きちんと別ファイルを作ってやるとかしたほうがよさげなのかな。
追記:
別ファイルに作ってやった
http://zakuni.blogspot.com/2010/12/sinatrahaml.html
0 件のコメント:
コメントを投稿