title: Correct clean up code
body: <p>I have the following two routes for edit and new:</p>
  
  <pre><code>WZ.ExercisesNewRoute = Em.Route.extend
    model: -&gt;
      WZ.Exercise.createRecord()
    deactivate: -&gt;
      @_super.apply this, arguments
      @get('currentModel.transaction').rollback()
  
  WZ.ExercisesEditRoute = Em.Route.extend
    model: (params) -&gt;
      WZ.Exercise.find(params.exercise_id)
    serialize: (params, options) -&gt;
      exercise_id: params.get('id')
    deactivate: -&gt;
      @_super.apply this, arguments
      tx = @get('currentModel.transaction')
      tx.rollback() if tx
  </code></pre>
  
  <p>I would like to know what the correct code should be in each deactivate so the store is in a correct state if the user does not save, does save or whatever.</p>
  
  <p>Currently if I route to the edit route and then directly to the new route without saving, I get the following error:</p>
  
  <blockquote>
    <p>Uncaught Error: Attempted to handle event <code>willSetProperty</code> on
     while in state rootState.deleted.saved.
    Called with {reference: [object Object], store: ,
    name: name}</p>
  </blockquote>