title: django no such table:
body: <p>I have models in Django set up as below. </p>
  
  <pre><code>class Pupil(models.Model):
      forename = models.CharField(max_length=30)
      surname = models.CharField(max_length=30)
      dateofbirth = models.DateField()
      year = models.IntegerField()
      class_group = models.CharField(max_length=30)
      email = models.EmailField(blank=True)
      assignments = models.ManyToManyField('Assignment', verbose_name='related assignments')
  
      def __unicode__(self):
          return u'%s %s' % (self.forename, self.surname)
  
  class Subject(models.Model):
      name = models.CharField(max_length=30)
      level = models.CharField(max_length=30)
      teachers = models.ManyToManyField('Teacher', verbose_name='related teachers')
  
      def __unicode__(self):
          return self.name
  
  class Teacher(models.Model):
      forename = models.CharField(max_length=30)
      surname = models.CharField(max_length=30)
      email = models.EmailField(blank=True)
  
      def __unicode__(self):
          return u'%s %s' % (self.forename, self.surname)
  
  class Assignment(models.Model):
      assignment_name = models.CharField(max_length=30)
      date_assigned = models.DateField()
      date_submitted = models.DateField()
  
      def __unicode__(self):
          return self.assignment_name
  </code></pre>
  
  <p>When I attempt to add a pupil and attach an assignment to the pupil in the admin, I get a database error -  </p>
  
  <pre><code>no such table: homework_pupil_assignments
  </code></pre>
  
  <p>after reading <a href="https://stackoverflow.com/questions/10077721/django-databaseerror-no-such-table">this</a> I realised this could be due to django not updating changes to my models as when I do <code>manage.py sqlall homework</code></p>
  
  <p>I see the following:</p>
  
  <pre><code>BEGIN;
  CREATE TABLE "homework_pupil_assignments" (
      "id" integer NOT NULL PRIMARY KEY,
      "pupil_id" integer NOT NULL,
      "assignment_id" integer NOT NULL,
      UNIQUE ("pupil_id", "assignment_id")
  )
  ;
  CREATE TABLE "homework_pupil" (
      "id" integer NOT NULL PRIMARY KEY,
      "forename" varchar(30) NOT NULL,
      "surname" varchar(30) NOT NULL,
      "dateofbirth" date NOT NULL,
      "year" integer NOT NULL,
      "class_group" varchar(30) NOT NULL,
      "email" varchar(75) NOT NULL
  )
  ;
  CREATE TABLE "homework_subject_teachers" (
      "id" integer NOT NULL PRIMARY KEY,
      "subject_id" integer NOT NULL,
      "teacher_id" integer NOT NULL,
      UNIQUE ("subject_id", "teacher_id")
  )
  ;
  CREATE TABLE "homework_subject" (
      "id" integer NOT NULL PRIMARY KEY,
      "name" varchar(30) NOT NULL,
      "level" varchar(30) NOT NULL
  )
  ;
  CREATE TABLE "homework_teacher" (
      "id" integer NOT NULL PRIMARY KEY,
      "forename" varchar(30) NOT NULL,
      "surname" varchar(30) NOT NULL,
      "email" varchar(75) NOT NULL
  )
  ;
  CREATE TABLE "homework_assignment" (
      "id" integer NOT NULL PRIMARY KEY,
      "assignment_name" varchar(30) NOT NULL,
      "date_assigned" date NOT NULL,
      "date_submitted" date NOT NULL
  )
  ;
  COMMIT;
  </code></pre>
  
  <p>I then installed South, following the directions to get up and running with an existing app, in the hope of successfully syncing these tables. No joy. </p>
  
  <p>Can anyone suggest how I can get the database (sqlite3) to reflect the models or point out what I'm doing wrong?</p>