Aus den Django.Contrib.Auth-Dokumenten :
Erweitern des Standardbenutzers von Django Wenn Sie mit dem Benutzermodell von Django vollkommen zufrieden sind und nur einige zusätzliche Profilinformationen hinzufügen möchten, können Sie einfach
django.contrib.auth.models.AbstractUser
Ihre benutzerdefinierten Profilfelder unterordnen und hinzufügen. Diese Klasse bietet die vollständige Implementierung des Standardbenutzers als abstraktes Modell.
Gesagt, getan. Ich habe ein neues Modell wie folgt erstellt:
class MyUser(AbstractUser):
some_extra_data = models.CharField(max_length=100, blank=True)
Dies zeigt sich in admin fast wie Djangos Standard User
. Der wichtigste Unterschied in admin besteht jedoch darin, dass das Feld zum (erneuten) Festlegen des Kennworts nicht vorhanden ist, sondern stattdessen ein normales CharField angezeigt wird. Muss ich wirklich Dinge in der Admin-Konfiguration überschreiben, damit dies funktioniert? Wenn ja, wie kann ich das auf etwas TROCKENE Weise tun (dh ohne Sachen aus der Django-Quelle zu kopieren ... eww ...)?