Upgrade von Django 1.6 (mit Süd) auf 1.8 ändern nicht 'last_login' in der Benutzertabelle

Ich habe ein Upgrade von Django 1.6.5 (mit Südmigrationen) auf Django 1.8 durchgeführt. Ich habe die Anweisungen hier befolgt:https: //docs.djangoproject.com/de/1.8/topics/migrations/#upgrading-from-sout

So entferne ich South, lösche meine vorherigen Migrationen und startepython manage.py makemigrations erstellt eine neue Migrationsdatei. Dann laufe ichpython manage.py migrate --fake-initial, um die anfängliche Migration vorzutäuschen. Dann laufe ichpython manage.py migrate.

Es läuft alles einwandfrei ohne Fehler.

Ich habe ein benutzerdefiniertes Benutzermodell, das @ erbAbstractBaseUser. In Django 1.8 scheint es eine Änderung am @ zu geblast_login -Feld, in dem es jetzt möglich ist, ein @ zu akzeptiernull Wert https: //docs.djangoproject.com/fr/1.8/ref/contrib/auth/#django.contrib.auth.models.User.last_logi).

Das Problem, das ich habe, ist, dass die Migration das @ nicht ändelast_login -Feld in der Datenbanktabelle, um Nullwerte zu akzeptieren. Wenn ich versuche zu speichern, erhalte ich als Ergebnis einIntegrityError Sprichwort(1048, "Column 'last_login' cannot be null").

Wie kann ich das beheben? Muss ich das Feld in der Datenbank manuell ändern oder gibt es eine Möglichkeit, es bei Migrationen zu beheben?

Bearbeite Wenn ich rennepython manage.py migrate --fake-initial Die Ausgabe lautet wie folgt: Ausführen von Migrationen:

  Rendering model states... DONE
  Applying contenttypes.0001_initial... FAKED
  Applying contenttypes.0002_remove_content_type_name... OK
  Applying auth.0001_initial... FAKED
  Applying auth.0002_alter_permission_name_max_length... OK
  Applying auth.0003_alter_user_email_max_length... OK
  Applying auth.0004_alter_user_username_opts... OK
  Applying auth.0005_alter_user_last_login_null... OK
  Applying auth.0006_require_contenttypes_0002... OK
  Applying core.0001_initial... FAKED
  Applying admin.0001_initial... FAKED
  Applying sessions.0001_initial... FAKED

Wenn ich jedoch in der Datenbank nachschaue, sehe ich immer nochuser_last_login als nicht-null.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage