mustache_rails3 provides a template handler and generators for Rails 3.
Switch branches/tags
Nothing to show
Pull request Compare This branch is 4 commits behind goodmike:master.
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Failed to load latest commit information.

Mustache support for Rails 3

This generator and template handler for Mustache in Rails 3 is based on the work of Paul Barry, Louis T., and Martin Gamsjaeger. I am indebted to them for allowing me to stand on their shoulders.

This is also available as a rubygem.

I'm just getting started. This really is a low-numbered prerelease. :-) I have asked for comments on the mustache project's Rails Support issue ticket. Please leave feedback there, and thanks.

Views & Templates

For your view files, subclass Mustache::Rails as (:controller)::(:action) in app/views/:controller/:action.rb


class Home::Index < Mustache::Rails
  def world
    'New Caprica'

Mustache::Rails registers a TemplateHandler for ".rb" files. Templates go in app/templates/:controller/:action.format.mustache


Hello {{world}}!


Layouts work much the same way, using a similar naming convention. Subclass Mustache::Rails as Layouts::(:layout) in app/views/layouts/:layout.rb


class Layouts::Main < Mustache::Rails
  def default_title
    'A Cylon fleet has jumped into orbit!'

Place the template for your layout in app/templates/layouts/:layout.format.mustache




A Rails 3 reminder: be sure to add

gem 'mustache'

to your project's Gemfile before running any generators or starting the server.

If you're using the mustache_rails3 gem, be sure to also add

gem 'mustache_rails3'

You can enable the mustache template handler by running

rails g mustache:install

in your project directory.