Skip to content
railswarePublic

About

Shared mustache templates for rails 3.

Resources

Stars

109 stars

Watchers

45 watching

Forks

Latest commit

 

History

47 Commits

Folders and files

Repository files navigation

SmtRails

Shared mustache templates for Rails 3 and 4 and Sprockets 2 and 3.

Installation

Add this line to your application's Gemfile:

gem 'smt_rails', :git => 'git://github.com/railsware/smt_rails.git'

And then execute:

$ bundle

Or install it yourself as:

$ gem install smt_rails

Usage

$ rails g smt_rails:install

Generator add into "application.js" requirements for mustache and "templates" folder in "app". Next you can create mustache templates in this folder or subfolders.

For example:

File: "app/templates/tests/_test.mustache"

Hello {{msg}}!!!

In view you can render this template by this way:

<%= render "tests/test", :mustache => {msg: "Test"} %>

The same template you can render in JavaScript:

var content = SMT['tests/test']({msg: "Test"});

Mustache Partials

File: "app/templates/people/_list.mustache"

{{#people}}{{>people/item}}{{/people}}

File: "app/templates/people/_item.mustache"

Name: {{name}}<br>

In view you can render this template by this way:

<%= render "people/list", :mustache => {people: [{name: 'Alex'}, {name: 'John'}]} %>

The same template you can render in JavaScript:

var content = SMT['people/list']({people: [{name: 'Alex'}, {name: 'John'}]});

Configuration

SmtRails.configure do |config|
  config.template_extension = 'mustache' # change extension of mustache templates
  config.action_view_key    = 'mustache' # change name of key for rendering in ActionView mustache template
  config.template_namespace = 'SMT'      # change templates namespace in javascript
  config.template_base_path = Rails.root.join("app", "templates") # templates dir
end

Demo

Site: http://st-rails-example.herokuapp.com/

Source code: https://github.com/le0pard/st_rails_example

Contributing

  1. Fork it
  2. Create your feature branch (git checkout -b my-new-feature)
  3. Commit your changes (git commit -am 'Added some feature')
  4. Push to the branch (git push origin my-new-feature)
  5. Create new Pull Request

About

Shared mustache templates for rails 3.

Resources

Stars

109 stars

Watchers

45 watching

Forks

Releases

Packages

Used by

Contributors

Languages