I have replicated your code, and when I debug it in the console, I get the following error.
Uncaught TypeError: Object # does not have a 'get' method
I saw the "project" model in the console and binds the model to a template. It could be a twist on your side if you can repeat it.
I had the same problem in my application and this is what I did and it worked. I needed to specify the type of model in the view, and it worked. Try it and see if it helps. Hope it helps.
Views.Projects.EditView = Backbone.View.extend({ tagName: 'div', **model : your model** id: 'edit-project-content', template: JST['projects/edit'], initialize: function(){ this.model = new Models.Project({id: this.options.projectId}); this.model.bind('change', this.render, this); this.model.fetch({ error: function(model, response) { alert('Error...Please try again.'); } }); }, render: function() { $(this.el).html(this.template({project: this.model}));
source share