title: Templating engine that binds model attributes to view?
body: <p>When rendering a template through a Backbone view you will often end up with some code that looks something like this:</p>
  
  <pre><code>ShirtView = {
    template: JST["/templates/shirt_template"],
    el: ".shirt-element"
  
    render: function() {
      var html = this.template({color: this.model.color, size: this.model.size});
      this.$el.html(html);
    }
  }
  </code></pre>
  
  <p>This is all well and good and your template will render with the attributes you wanted. But if <code>this.model.color</code> changes then it will not be reflected in the view. You can then use something like modelbinder to explicitly bind elements in the view to your model, but this means introducing extra code to your view.</p>
  
  <p>What I am wondering is if there are any templating engines, like Moustache or Handlebars, that automatically updates the elements belonging to the fields in the attributes object as the model changes, without me having to specify it in the view?</p>