Ich versuche, das E-Mail-Feld im Standard-Django-Benutzermodell als Benutzername zu verwenden. Ich benutze Django 1.5 und ich sah, dass der Standardbenutzer eine USERNAME_FIELD
Eigenschaft hat. In meinem Projekt möchte ich folgendes USERNAME_FIELD = 'email'
als Standard im Benutzermodell festlegenKann ich das USERNAME_FIELD in Django 1.5 ändern, ohne einen benutzerdefinierten Benutzer zu erstellen?
Diese kleine aber grundlegende Optimierung ist die einzige Sache, die ich im Benutzermodell ändern möchte. Ich habe mich gefragt, ob es eine Möglichkeit gibt, die USERNAME_FIELD
zu ändern, ohne den AbstractUser zu unterklassen. Ich sah in this question, dass Sie die AbstractUser
Unterklasse erstellen und einen benutzerdefinierten Manager dafür schreiben können.
Also fragte ich mich, ob es eine einfachere Möglichkeit gibt, diese Eigenschaft zu ändern?
Und wenn nicht, was wäre die minimale Art und Weise der Erweiterung der AbstractUser
, um das E-Mail-Feld als Benutzername zu verwenden?
Verwendung AbstraceBaseUser statt – catherine
@catherine Wenn Sie Subclass AbstractUser Manager entfernen Sie diese Probleme am Ende: http: //stackoverflow.com/questions/16605453/django-1-5-extend- the-default-user-model-or-substitute-it und http://stackoverflow.com/questions/16601412/upgrading-django-to-1-5-with-django-cms-user-model-issue – Daviddd