title: Added wrong default value in new field and now can't migrate
body: <p>I added a user foreign field in one of my models and made a migration. I was prompted to add a default value. The default value for user is suppose to be Int, representing the user_id. Instead of adding an Int, I added a string "username".</p>
  
  <p>Now I'm stuck with:</p>
  
  <pre><code>return int(value)
  ValueError: invalid literal for int() with base 10: 'testuser'
  </code></pre>
  
  <p>I deleted all the objects associated with the model, and tried migrating, that didn't work, getting same error. (<code>Model.objects.all().delete()</code>)</p>
  
  <p>I reverted to a previous migration, that didn't solve the problem, when I migrated, it got the same ValueError. (<code>./manage.py migrate app 0037_auto_20170330_0326</code>)</p>
  
  <p>Lastly, I deleted my new foreign field, but that didn't solve the issue either.</p>
  
  <p>What other options do I have in such a scenario?</p>
  
  <p>My model is very simple:</p>
  
  <pre><code>class Chat(models.Model):
      user = models.ForeignKey(User) #new field that was added
      message = models.CharField(max_length=50)
  </code></pre>