Skip to main content
https://s3.amazonaws.com/webdev_bucket/pystache.png

Inspired by ctemplate and et, Mustache is a framework-agnostic way to render logic-free views.

As ctemplates says, “It emphasizes separating logic from presentation: it is impossible to embed application logic in this template language.”

Pystache is a Python implementation of Mustache. Pystache works on–

  • Python 2.4

  • Python 2.5

  • Python 2.6

  • Python 2.7

Pystache is semantically versioned: http://semver.org.

Logo: David Phillips - http://davidphillips.us/

Documentation

The different Mustache tags are documented at mustache(5).

Install It

pip install pystache

Use It

>>> import pystache
>>> pystache.render('Hi {{person}}!', {'person': 'Mom'})
'Hi Mom!'

You can also create dedicated view classes to hold your view logic.

Here’s your simple.py:

import pystache
class Simple(pystache.View):
    def thing(self):
        return "pizza"

Then your template, simple.mustache:

Hi {{thing}}!

Pull it together:

>>> Simple().render()
'Hi pizza!'

Test It

nose works great!

pip install nose
cd pystache
nosetests

Depending on your Python version and nose installation, you may need to type, for example

nosetests-2.4

Mailing List

As of Nov 26, 2011, there’s a mailing list, pystache@librelist.com.

Archive: http://librelist.com/browser/pystache/

Note: There’s a bit of a delay in seeing the latest emails appear in the archive.

Author

context = { 'author': 'Chris Wanstrath', 'email': 'chris@ozmm.org' }
pystache.render("{{author}} :: {{email}}", context)

History

0.4.1 (2012-03-25)

  • Added support for Python 2.4. [wangtz, jvantuyl]

0.4.0 (2011-01-12)

  • Add support for nested contexts (within template and view)

  • Add support for inverted lists

  • Decoupled template loading

0.3.1 (2010-05-07)

  • Fix package

0.3.0 (2010-05-03)

  • View.template_path can now hold a list of path

  • Add {{& blah}} as an alias for {{{ blah }}}

  • Higher Order Sections

  • Inverted sections

0.2.0 (2010-02-15)

  • Bugfix: Methods returning False or None are not rendered

  • Bugfix: Don’t render an empty string when a tag’s value is 0. [enaeseth]

  • Add support for using non-callables as View attributes. [joshthecoder]

  • Allow using View instances as attributes. [joshthecoder]

  • Support for Unicode and non-ASCII-encoded bytestring output. [enaeseth]

  • Template file encoding awareness. [enaeseth]

0.1.1 (2009-11-13)

  • Ensure we’re dealing with strings, always

  • Tests can be run by executing the test file directly

0.1.0 (2009-11-12)

  • First release

Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Source Distribution

pystache-0.4.1.tar.gz (6.6 kB view details)

Uploaded Source

File details

Details for the file pystache-0.4.1.tar.gz.

File metadata

  • Download URL: pystache-0.4.1.tar.gz
  • Upload date:
  • Size: 6.6 kB
  • Tags: Source
  • Uploaded using Trusted Publishing? No

File hashes

Hashes for pystache-0.4.1.tar.gz
Algorithm Hash digest
SHA256 4821650a18f31be79e181fd1faba403e55e25804c5b9aac470bb2f0c57f34c30
MD5 9ee71d0abe78fe447ab4e74e60a8b918
BLAKE2b-256 00745be8897444d0cc3214dd6de6acf11e46e4d420c3693df55f401b068a4bdf

See more details on using hashes here.

Release history Release notifications | RSS feed

0.6.8

2 files

0.6.7

2 files

0.6.6

2 files

0.6.5

2 files

0.6.4

2 files

0.6.0

1 file

0.5.4

1 file

0.5.3

1 file

0.5.2

1 file

0.5.1

1 file

0.5.0

1 file

This release

0.4.1 This release

1 file

0.4.0

1 file

0.3.1

1 file

0.3.0

1 file

0.2.0

1 file

0.1.0

1 file

0.0.0

2 files

Supported by

AWS Cloud computing and Security Sponsor Datadog Monitoring Depot Continuous Integration Fastly CDN Google Download Analytics Sentry Error logging StatusPage Status page