De la Docs Django.Contrib.Auth :
Extension de l'utilisateur par défaut de Django Si le modèle User de Django vous convient parfaitement et que vous souhaitez simplement ajouter des informations de profil supplémentaires, vous pouvez simplement sous-classer
django.contrib.auth.models.AbstractUser
et ajoutez vos champs de profil personnalisés. Cette classe fournit l'implémentation complète de l'utilisateur par défaut en tant que modèle abstrait.
C'est dit et fait. J'ai créé un nouveau modèle comme ci-dessous :
class MyUser(AbstractUser):
some_extra_data = models.CharField(max_length=100, blank=True)
Cela s'affiche dans l'administration presque comme le standard de Django User
. Cependant, la différence la plus importante dans l'administration est que le champ de (re)définition du mot de passe n'est pas présent, mais un CharField normal est affiché à la place. Dois-je vraiment remplacer des éléments de la configuration d'administration pour que cela fonctionne ? Si c'est le cas, comment puis-je le faire d'une manière un peu DRY (c'est-à-dire sans copier des choses depuis les sources de Django... eww...) ?