Hatena::ブログ(Diary)

PvP:: Scala勉強中 このページをアンテナに追加 RSSフィード

2009-07-27

Sinatra | Rendering partial templates

たぶんSinatraでは partialメソッドは自分で定義するもの

http://www.sinatrarb.com/faq.html#partials

定義しなくてもいい。

  haml :template_name, :layout => false

こんなかんじの例をどこかで見たような気がします。

helpers do
  def partial(template, options={}, locals={})
    haml template, options.merge(:layout => false), locals
  end
end

さらにいろいろやってくれるpartialメソッド。

http://github.com/cschneid/irclogger/blob/master/lib/partials.rb


個人的には _haml

partial という名前で定義すると template engine の指定が暗黙的になってしまうので

helpers do
  def _haml(template, locals={})
    haml template, :layout => false, locals
  end
end

というかんじにしようかなと思っています。