0

Je veux créer mon utilisateur personnalisé en étendant AbstractUser, mais quand je veux authentifier mon retour d'utilisateur personnalisé Aucune.Modèle utilisateur personnalisé étendu AbstractUser, authenticate return Aucun

Lorsque je crée CustomUser() est stocké dans la base de données mais le passwowrd n'est pas crypté. Puis-je utiliser la fonction d'authentification de banckend default? ou je dois créer un back-end personnalisé pour mon utilisateur personnalisé.

i ajouté:

AUTH_USER_MODEL = 'mysite.customuser'

Je pense extension de AbstractUser, ma classe n'ont pas la même méthode ou quelque chose qui ne va pas

+1

S'il vous plaît ajoutez votre 'utilisateur models.py' personnalisé Modèle –

Répondre

0

SOLVED! Le problème n'était pas d'étendre AbstracUser, le problème était quand j'ai sauvé l'utilisateur, CustomUser (nom d'utilisateur = 'myusername', motdepasse = 'motdepasse'), le mot de passe est enregistré comme texte brut et de fonction authentifier() ne fonctionne pas avec ça.

Il est nécessaire de sauvegarder l'utilisateur UserCreationForm, ou de l'étendre, le plus important étant la méthode save() car utilisez la méthode set_password() qui définit le mot de passe crypté, ainsi la méthode authenticate() fonctionne.