Aus irgendeinem Grund kann ich heute meine Datenbank nicht mit python manage.py dumpdata
oder einem Link, der die mysql-Datei herunterladen kann, ausgeben.
Ich habe versucht, python manage.py dumpdata --traceback
zu verwenden und hier sind die Informationen, die ich habe.
Es heißt django.contrib.auth.models.DoesNotExist
. Ich frage mich, ob es etwas mit einem Fremdschlüssel oder etwas zu tun hat.
models.py
%Vor% In meinem models.py wurden kürzlich Feldbenutzer, Datum und Uhrzeit hinzugefügt. Nun, wenn für eines der Clients eines dieser Felder keinen Wert hat, d. H. Leer, erhalte ich den Fehler Unable to serialize database
.
Wenn ich Benutzer, Datetime und Notiz in mysql nachgeschlagen habe. Die Tabelle für den Client zeigt user_id, datetime und note an, um Nullwerte zu haben (was ich will). Warum erlaubt es keine Null-Werte?
%Vor%Sie müssen Django mitteilen, dass NULL-Werte für die zuletzt hinzugefügten Felder zulässig sein sollen. Es betrachtet nur die Definition der Felder, es holt das Schema nicht von der Datenbank.
Der Fehler self.field.rel.to.DoesNotExist
wird höchstwahrscheinlich ausgelöst, wenn einem Client kein Benutzer zugeordnet ist und auf client.user
zugegriffen wird. Das liegt daran, dass standardmäßig alle Felder benötigt werden. Wenn Sie Ihre Modelldefinition wie unten beschrieben ändern, sollte der Fehler verschwinden.
null=True
erlaubt NULL
bzw. None
Werte für ein Feld. blank=True
können Sie das Feld in einem Modell leer lassen
(zB im Admin). ( blank
und null
sind standardmäßig False
)