Question: I use backbone.js and have a model without a collection.
In the view I call fetch on the model with a callback to render the view.

```
this.user.fetch({success: function(d) { self.randomUserView.render() }})

```

how can I make the view update automatically when the model change? e.g. I don't want to specify the above callback every time I call fetch. I tried to bind the view to many model events on initialize but this did not work.

Answer: 
On the view, add an event handler to the view's model:

```
initialize: function() {
  this.model.on('change',this.render,this);
}

```
Backbone is event-driven, not callback driven framework (although technically they are callbacks). And your approach does not seem to be native to Backbone. When you do fetch(), user model will automatically trigger "add" event. All you need to do is in the corresponding view add this in initialize:

```
initialize: function() {
  ... your code...
  this.model.bind('add', this.render);
}

```

This way you subscribe to this even only once in the view init and don't have to ever pass explicit callbacks.