[Python-es] Agregar mas campos a User

Andrey Antoukh andsux en gmail.com
Vie Nov 4 23:54:25 CET 2011


Si creas una subclase de la clase user, tienes que tener en cuenta que
ademas de crear la subclase estas creando una segunda tabla en la base
de datos, y cuando haces consulta a tu modelo, realmente siempre
tienes un 1:1 con la tabla de user de django.

Mas alla de lo que ya he dicho, para que se vea en el admin, tienes
que registrarla en el admin. Lo que esta claro es que si no la
registras no se va a mostrar... se mostrara la de django.auth generica
que viene por defecto por que se registra "automaticamente".


Otra solucion, para evitar querys innecesarias, puedes crear tu clase
user copiando la funcionalidad de django.auth... y creando tu propio
auth manager. Y con un apañito y un monky patch XD tienes tu propia
clase de usuario. Pero este caso es bastante especifico, y dudo mucho
que lo llegues a necesitar.

Andrei.

El día 4 de noviembre de 2011 21:29, Angel Claudio Alvarez
<angel en angel-alvarez.com.ar> escribió:
> El jue, 03-11-2011 a las 18:03 -0600, Allan N. Porras escribió:
>> Hola lista.
>>
>> Van a disculpar mi insistencia. Ya he preguntado esto en una ocasion
>> pero no he recibido mayor informacion que los links de la
>> documentacion oficial. La he leido, pero aun no le llego.
>>
>> Yo quiero hacer un sistema de registro de personal y me gustaria poder
>> usar la app que ya viene instalada en mi django... tambien me gustaria
>> conservar la app "auth".
>>
>> Quiero agregar mas campos para User, como por ejemplo telefono,
>> direccion, departamento, etc.
>>
>> Ya he hecho una subclase de User (UserProfile) y he agregado los
>> campos que quiero, pero en cuando trato de agregar un usuario nuevo
>> desde "admin" no veo los campos que he agregado.
>>
>> Creo que me estoy complicando mas de lo necesario, pero es que llevo
>> varios leyendo pero aun no soluciono mi problema.
>>
>> Espero que me hayan entendido y que alguien me pueda ayudar.
>>
> Te equivocaste de lista
> En la lista de django hoy preguntaron por eso mismo y yadieron la
> respuesta. Y esta en la documentacion de django
>> Saludos!!
>>
>> Sent from my HTC
>>
>> _______________________________________________
>> Python-es mailing list
>> Python-es en python.org
>> http://mail.python.org/mailman/listinfo/python-es
>> FAQ: http://python-es-faq.wikidot.com/
>
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>



-- 
http://twitter.com/niwibe
http://www.niwi.be
****
http://www.freebsd.org/
http://www.postgresql.org/
http://www.python.org/
http://www.djangoproject.com/

"Linux is for people who hate Windows, BSD is for people who love UNIX"
"Social Engineer -> Because there is no patch for human stupidity"


Más información sobre la lista de distribución Python-es