title: Django, ManyToManyField - ProgrammingError: relation foo_bar does not exist. Recognized in migrations, though relation is never created
body: <p>In this case, "foo_bar" is actually "links_userprofile_favorite_feeds". </p>
  
  <p>The problem is, when I go into manage.py shell:</p>
  
  <h1>manage.py shell</h1>
  
  <pre><code>from django.contrib.auth.models import User
  from feeds.models import feed
  p = User.objects.get(username='myuser')
  p.save()
  q = Feed.objects.get(title='myfeed')
  q.save()
  p.userprofile.favorite_feed.add(q)
  </code></pre>
  
  <p>I get</p>
  
  <h1>the error:</h1>
  
  <pre><code>ProgrammingError: relation "links_userprofile_favorite_feeds" does not exist
  LINE 1: ..."links_userprofile_favorite_feeds"."feed_id" FROM "links_use...
  </code></pre>
  
  <p>Here are the relevant files and traceback:</p>
  
  <h3>links.models.py</h3>
  
  <pre><code>class UserProfile(models.Model):
      user = models.OneToOneField(User,unique=True)
      bio = models.TextField(null=True)
      thumbnail = models.ImageField(upload_to="uploaded_files/")  
      favorite_feeds = models.ManyToManyField(Feed)
  </code></pre>
  
  <h3>feeds.models.py</h3>
  
  <pre><code>class Feed(models.Model):
      title = models.CharField(max_length=25)
      slug = models.SlugField(max_length=25)
  
      def save(self, *args, **kwargs):
          if not self.slug:
              #Newly created object, so set slug
              self.slug = slugify(self.title)
  
          super(Feed,self).save(*args,**kwargs)
  
      def __unicode__(self):
          return self.title
  
      class Meta:
          ordering = ('title',)
  </code></pre>
  
  <p>The relation seems to be present in the migration, but <code>manage.py syncdb, manage.py makemigrations, manage.py migrate</code>, all do not work (no migrations to apply). </p>
  
  <p>Can anyone help? I am wanting to create the relation <code>"links_userprofile_favorite_feeds."</code></p>