Django - DatabaseError: es gibt Keine Tabelle

Definierte ich zwei Modelle:

class Server(models.Model):
    owners = models.ManyToManyField('Person')

class Person(models.Model):
    name = models.CharField(max_length=50)

admin.site.register(Server)
admin.site.register(Person)

Danach habe ich auch überprüft die sql-just for fun:

BEGIN;
CREATE TABLE "servers_server_owners" (
    "id" integer NOT NULL PRIMARY KEY,
    "server_id" integer NOT NULL,
    "person_id" integer NOT NULL,
    UNIQUE ("server_id", "person_id")
)
;
CREATE TABLE "servers_server" (
    "id" integer NOT NULL PRIMARY KEY,
    "name" varchar(50) NOT NULL,
    "port" integer unsigned NOT NULL,
    "state" integer NOT NULL
)
;
CREATE TABLE "servers_person" (
    "id" integer NOT NULL PRIMARY KEY,
    "name" varchar(50) NOT NULL
)
;
COMMIT;

Gibt es auch, sagt CREATE TABLE "servers_server_owners"

Lief ich syncdb installieren Sie die neuen Modelle in die Datenbank. Ich ging auf das admin-interface zu definieren, einige Objekte mit zu spielen, aber ich bekam die folgende Fehlermeldung:

DatabaseError at /admin/servers/server/1/  
no such table: servers_server_owners

Ich Herunterfahren der dev-server, lief syncdb wieder der server gestartet: immer Noch dasselbe problem. Warum kann Sie nicht finden, den Tisch, obwohl es mir gerade gesagt, es erzeugte id?

Entweder haben Sie die fehlenden Informationen in die oben genannten, oder dein Beispiel ist falsch. Die Standard-Zwischentabelle sollte "servers_server_person" es sei denn, man definiert die Zwischentabelle mit "durch"
Ich habe nicht verwendet through, und ich dachte auch an die gleiche Sache, als ich sah, sql. Es scheint zu sein, Kommissionierung bis auf den Namen der property
Der richtige Weg, um Ihre eigene Frage zu beantworten auf, SO ist zu poste es als Antwort und es akzeptieren, nicht Bearbeiten Sie Ihre ursprüngliche Frage. Herzlich willkommen auf Stack Overflow!
Ja, ich weiß und schon ausprobiert. Es geschieht nur zu einem 8-stündigen Verzögerung, bevor die Menschen unter 100 Ruf kann beantworten Ihrer eigenen Fragen. Ich habe nur editiert, um andere zu retten, die diese Frage die Schwierigkeiten der Versuch einer Antwort auf diese, bis ich post die Antwort. Sechs Stunden zu gehen.
python manage.py migrate lösen das Problem für mich

InformationsquelleAutor varesa | 2012-04-09

Schreibe einen Kommentar