Django - DatabaseError: Brak takiej tabeli
Zdefiniowałem dwa modele:
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)
Potem sprawdziłem nawet sql, tylko dla zabawy:
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;
Tam nawet mówiCREATE TABLE "servers_server_owners"
Pobiegłemsyncdb
zainstalować nowe modele w bazie danych. Poszedłem do interfejsu administratora, aby zdefiniować niektóre obiekty do zabawy, ale otrzymałem następujący błąd:
DatabaseError at /admin/servers/server/1/
no such table: servers_server_owners
Wyłączyłem serwer dev, uruchomiłemsyncdb
ponownie uruchomiłem serwer: wciąż ten sam problem. Dlaczego nie może znaleźć tabeli, mimo że właśnie powiedział mi, że utworzył identyfikator?