Note that there are some explanatory texts on larger screens.

plurals
  1. POdjango no such table:
    primarykey
    data
    text
    <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>
    singulars
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload