Fik løsningen.
Jeg var nødt til at deaktivere triggerne på bordet for at stoppe kontrollen med fremmednøglebegrænsninger.
Deaktiver triggere
def disable_triggers(self):
with connection.cursor() as cursor:
cursor.execute('ALTER TABLE "Table Name" DISABLE TRIGGER ALL;')
Aktiver triggere
def enable_triggers(self):
with connection.cursor() as cursor:
cursor.execute('ALTER TABLE "Table Name" ENABLE TRIGGER ALL;')
Vigtige bemærkninger :
-
Ifølge dette dokumentlink , kan du sende en liste som det andet argument til
execute()
metode (f.eks:du ønsker måske at videregive tabelnavnet dynamisk), men dette vil automatisk undslippe variablerne, og du kan ende med at danne en syntaktisk forkert PostgreSQL-forespørgsel (som tog meget af min tid at rette det) -
Sørg for at tænde udløserne igen korrekt
-
Hvis du får fejlen Permission denied Så vil du måske tjekke DB-brugertilladelserne, jeg har lige slået superbrugertilladelser til fra PgAdmin, hvilket var ok for mig. og alt tilbage på arbejde. Hvordan gør man det?