Module Mustache::Sinatra
In: lib/mustache/sinatra.rb

Support for Mustache in your Sinatra app.

  require 'mustache/sinatra'

  class Hurl < Sinatra::Base
    register Mustache::Sinatra

    set :mustache, {
      # Should be the path to your .mustache template files.
      :templates => "path/to/mustache/templates",

      # Should be the path to your .rb Mustache view files.
      :views => "path/to/mustache/views",

      # This tells Mustache where to look for the Views module,
      # under which your View classes should live. By default it's
      # the class of your app - in this case `Hurl`. That is, for an :index
      # view Mustache will expect Hurl::Views::Index by default.
      # If our Sinatra::Base subclass was instead Hurl::App,
      # we'd want to do `set :namespace, Hurl::App`
      :namespace => Hurl
    }

    get '/stats' do
      mustache :stats
    end
  end

As noted above, Mustache will look for `Hurl::Views::Index` when `mustache :index` is called.

If no `Views::Stats` class exists Mustache will render the template file directly.

You can indeed use layouts with this library. Where you‘d normally <%= yield %> you instead {{{yield}}} - the body of the subview is set to the `yield` variable and made available to you.

Methods

Classes and Modules

Module Mustache::Sinatra::Helpers

Public Class methods

Called when you `register Mustache::Sinatra` in your Sinatra app.

[Validate]