template - ¿Cómo anular el campo de modelo de usuario predeterminado en Django?
import django template (1)
El problema es que el modelo de usuario predeterminado no tiene algunas opciones muy útiles para los campos, por ejemplo, único = Verdadero en el campo de correo electrónico.
Leí esta pregunta: anule el método del modelo de usuario predeterminado y el concepto del modelo de proxy comprobado, pero sin efecto.
Al principio intenté:
from django.contrib.auth import models
class User(models.User):
class Meta:
proxy = True
email = EmailField(''e-mail address'', unique=True, blank=False)
que resultó en:
django.core.exceptions.FieldError: Proxy model ''User'' contains model fields.
así que el siguiente fue:
from django.contrib.auth import models
class User(models.User):
class Meta:
proxy = True
models.User.email = EmailField(''e-mail address'', unique=True, blank=False)
y esta "solución" no tiene ningún efecto en absoluto. El modelo de usuario predeterminado se comportaba igual que antes.
Estoy interesado en una solución que no sea de parche de mono.
Editar: Ok. Monkey-patching es aceptable para mí, pero ¿cómo hacer esto razonablemente? (Me refiero a no cambiar el archivo que se encuentra en /usr/pyshared/python2.6/...
)
Ya está esto preguntado ... Cómo hacer que el campo de correo electrónico sea único en el modelo Usuario de contrib.auth en Django
También el método django de datos de usuario adicionales está aquí http://docs.djangoproject.com/en/dev/topics/auth/#auth-profiles .
No soy del todo admirador de este método y aprecio de dónde vienes, pero a veces tienes que ir con la manada.