title: Backbone.js I want to do model.fetch and have the data reflected back in the source collection
body: <p>I'm really looking to understand the concept here (as opposed to receiving a code solution).</p>
  
  <p>I have a collection that was populated by a fetch.  I want to take a single model from the collection, fetch the latest data from the server, then have the data that came from the server put back into the collection's version of the model.</p>
  
  <p>Restating with terms from Backbones docs: I'd like to ensure that I have the latest server state.  I won't care about "change" events that are triggered because I'm expecting the model to change almost every time.  Fetch <em>resets the model's state from the server</em>, so I should just be able to do something like this, right?:</p>
  
  <p>[pseudo]</p>
  
  <pre><code>model.fetch();
  </code></pre>
  
  <p>in the fetch success handler call one of these:</p>
  
  <pre><code>this: collection.add(model, {merge: true});
  ..or: collection.set(model);         
  </code></pre>
  
  <p>If that's not enough to accomplish my task, what concept am I missing?</p>
  
  <p><strong>EDIT - adding details</strong></p>
  
  <p>I call fetch():</p>
  
  <pre><code>controller.model.fetch({
      success: function(model){
          console.log(model);
          updateView();
      },
      error: function(){
          console.error('error fetching contact model');
      }
  });
  </code></pre>
  
  <p>The success callback is fired after the fetch().  I can see that the model has new data and that the Image has been modified and needs to be re-downloaded:</p>
  
  <p><img src="https://i.stack.imgur.com/R16rS.png" alt="ImageDateLastUpdated has changed"></p>
  
  <p>When I call my function that updates the view, nothing changes visibly because the latest data is still in the "changed" member...it seems.  What's the standard way to get the latest data from "changed" into the "attributes" member?  And is this made clear in the documentation?</p>