Skip to content
{{ mustache }} for ColdFusion
ColdFusion HTML
Find file
Pull request Compare This branch is 58 commits ahead, 1 commit behind pmcelhaney:master.
Latest commit 1086bf6 Apr 24, 2015 Anthony Petruzzi Merge pull request #27 from skj3gg/master
thank you
Failed to load latest commit information.
mustache Added ability to space out section syntax Apr 23, 2015
tests Added ability to space out section syntax Apr 23, 2015
.gitignore Expanded git ignore. Mar 7, 2012
LICENSE
readme.markdown Add information about mxunit and testing. Jun 4, 2014

readme.markdown

Mustache.cfc

Chris Wanstrath's Mustache templates for ColdFusion.

Installation

Mustache is a single component. To install, download the Mustache.cfc file from the mustache directory.

Basic Usage

<cfset mustache = createObject("component", "Mustache").init()>
<cfset template = "Hello, {{thing}}!">
<cfset context = structNew()>
<cfset context['thing'] = 'World'>

<cfoutput>#mustache.render(template, context)#</cfoutput>

Creating Views

Given a template named Winner.mustache:

Hello {{name}}
You have just won ${{value}}!
{{#in_ca}}
Well, ${{taxed_value}}, after taxes.
{{/in_ca}}

And a view named Winner.cfc:

<cfcomponent extends="Mustache">
  <cffunction name="taxed_value">
    <cfreturn this.value * 0.6>
  </cffunction>
</cfcomponent>

You can render the view like so:

<cfset winner = createObject("component", "Winner")>
<cfset winner.name = "Patrick">
<cfset winner.value = "1000">
<cfset winner.in_ca = true>
<cfoutput>#winner.render()#</cfoutput>

Result:

Hello Patrick
You have just won $1000!
Well, $600, after taxes.

A custom tag is also included so you can render templates like so:

<cfset context = {
    name = "Patrick",
    value = 1000,
    in_ca = true,
    taxed_value = 600
} />

<cfimport taglib="/path/to/mustache/dir" prefix="stache" />
<stache:mustache context="#context#">
<cfoutput>
Hello {{name}}
You have just won ${{value}}!
{{##in_ca}}
Well, ${{taxed_value}}, after taxes.
{{/in_ca}}
</cfoutput>
</stache:mustache>

Testing

To run the files in the tests folder you first need to download and install MXUnit. MXUnit is not required to run Mustache.cfc

Something went wrong with that request. Please try again.