title: Backbone model.save() is causing POST not PUT
body: <p>I have a Backbone model:</p>
  
  <pre><code>var User = Backbone.Model.extend({
    idAttribute: '_id',
  
    url: '/api/user',
  
    defaults:
      { username: ''
      }
  });
  </code></pre>
  
  <p>I fetch it:</p>
  
  <pre><code>var user = new User();
  
  user.fetch();
  </code></pre>
  
  <p>Now, as an <code>click</code> event in one of my views, I have this:</p>
  
  <pre><code>toggleSubscription: function () {
    user.set('subscriptions', true);
    user.save();
  }
  </code></pre>
  
  <p>This causes a POST request. However, the record already exists on the server, and since I fetched it (and the model instance has an <code>id</code> property), I thought that Backbone should do a PUT instead of a POST. Why might it be doing a POST instead?</p>