Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Criando usuário personalizado no django

Eu criei um modelo CustomUser e um Manager e o adicionei ao admin. Quando executo

python manage.py createsuperuser

Ele já me mostra o superusuário com os campos que eu criei e diz que o usuário foi criado com sucesso. Todavia, ao rodar o runserver e ir à minha página de login e tentar logar com o usuário no sistema, não consigo logar. Poderiam me ajudar? Olhei a aula de vocês sobre, mas não me ajudou.

On customuser/models.py:

from future import unicode_literals from django.db import models from django.contrib.auth.models import AbstractUser from django.contrib.auth.models import AbstractBaseUser, BaseUserManager

class CustomUserManager(BaseUserManager): def create_user(self, username, email, first_name, last_name, cpf, password=None): user = self.model( username=username, email=email, first_name=first_name, last_name=last_name, cpf=cpf ) return user

def create_superuser(self, username, email, first_name, last_name, cpf, password): user = self.create_user(username, email, first_name, last_name, cpf, password=password) user.is_super_user = True user.save() return user

class CustomUser(AbstractUser):

SEXO_CHOICES = ( (u'Masculino', u'Masculino'), (u'Feminino', u'Feminino'), )

cpf = models.BigIntegerField(unique=True) phone = models.CharField(max_length=15, blank=True) is_super_user = models.BooleanField(default=False) data_de_nascimento = models.DateField(null=True) sexo = models.CharField(max_length=9, null=True, choices=SEXO_CHOICES)

USERNAME_FIELD = 'username' REQUIRED_FIELDS = ['email', 'first_name', 'last_name', 'cpf']

On settins.py, I add the line:

INSTALLED_APPS = [ ... 'customuser', ]

...

AUTH_USER_MODEL = 'customuser.CustomUser'

And my customuser/admin.py:

from django.contrib import admin

from models import CustomUser, CustomUserManager

admin.site.register(CustomUser)

1 resposta
solução!

Saiu errado. Não tem como editar. Vou fazer denovo.