Mustache for Flask

e.g.


    from flask import Flask
    from pystache import TemplateSpec
    from flask.ext.mustache import FlaskMustache

    app = Flask(__name__)
    mustache = FlaskMustache(app)


    @mustache.view_route('/example/<stuff>')
    class Example(TemplateSpec):

        """
        An example view
        """

        template = "{{hello}}"

        def hello(self):
            return "hello"


    @mustache.view_route('/example/<stuff>')
    class ParamExample(TemplateSpec):

        """
        An example view
        """

        template = "{{hello}}{{stuff}}"

        def route(self, stuff):
            self.stuff = stuff

        def hello(self):
            return "hello"


    @mustache.view_route('/example/<dynamic>')
    class DynamicExample(TemplateSpec):

        """
        An example view
        """

        template = "{{hello}}{{dynamic}}"

        def route(self, **kwargs):
            self.route_args = kwargs

        def hello(self):
            return "hello"

        def dynamic(self):
            return self.route_args.get('dynamic', '')


    @mustache.view_error(404)
    class Example404(TemplateSpec):

        """
        An example 404 view
        """

        template = "{{hello}}"

        def hello(self):
            return "hello 404"

    @mustache.view_error(NotImplementedError, 501)
    class ExampleCustomCode(TemplateSpec):

        """
        An example Exception view that emits a (user specified) 501 code
        """

        template = "{{hello}}"

        def hello(self):
            return "hello custom code"
