A modo de apunte dejo los pasos a seguir para crear un modelo de autenticación en Django 1.11. No voy a ahondar en ningún detalle ya que estos se pueden encontrar en:
- https://docs.djangoproject.com/en/1.11/ref/contrib/admin/
- https://docs.djangoproject.com/en/1.9/topics/auth/customizing/#substituting-a-custom-user-model
1: Registra la app en la cuál vayas a especificar tu modelo de usuario dentro de settings.py.
INSTALLED_APPS = [ 'django.contrib.admin', 'django.contrib.auth', 'django.contrib.contenttypes', 'django.contrib.sessions', 'django.contrib.messages', 'django.contrib.staticfiles', 'tu_app' ]
2: En models.py de ‘tu_app’ añade lo siguiente:
from django.db import models from django.contrib.auth.models import AbstractUser class User(AbstractUser): pass
3: De vuelta en settings.py añade la siguiente línea:
AUTH_USER_MODEL = 'tu_app.User'
(No importa en qué punto del documento la incluyas)
4: Entra en admin.py de ‘tu_app’ y registra la siguiente entrada:
from django.contrib import admin from .models import User from django.contrib.auth.admin import UserAdmin admin.site.register(User, UserAdmin)
5: Migraciones.
python manage.py makemigrations python manage.py migrate
Y listo.