title: Django model u'id' clashes when using OneToOneField
body: <p>I have created a model <strong>UserProfile</strong> to relate model <strong>User</strong>.</p>
  
  <p>I got error when doing <em>python manage.py makemigrations</em>: </p>
  
  <blockquote>
    <p>django.core.exceptions.FieldError: Local field u'id' in class 'UserProfile' clashes with field of similar name from base class 'User'</p>
  </blockquote>
  
  <p>Here's the code:</p>
  
  <pre><code>from django.contrib.auth.models import User
  from django.db.models.signals import post_save
  
  class UserProfile(models.Model):
      user = models.OneToOneField(User, related_name='user_of')
      description = models.TextField()
  
  def create_user_profile(sender, instance, created, **kwargs):
      if created:
          profile, created = UserProfile.objects.get_or_create(user=instance)
  post_save.connect(create_user_profile, sender=User)
  </code></pre>
  
  <p>Environment: Django 1.8.2, Python 2.7.6, PostgreSQL 9.4.2</p>
  
  <p>Is that a bug? How come does the u'id' of 'UserProfile' clashes with that of 'User'...</p>
  
  <p>I have tried to add a line in the file <em>settings.py</em>:</p>
  
  <pre><code>AUTH_PROFILE_MODULE = 'user_profile.UserProfile'
  </code></pre>
  
  <p>But that did not work whether it has or not.</p>
  
  <p>How to fix this?
  Thanks!</p>