Hola, tengo un problema:
Tengo un modelo que relaciona el perfil del usuario usando
un ManyToManyField hacia varios modelos (Modelo2 y Modelo1) estos
relacionados entre si usando OneToOneField.
El problema es que solo *logro acceder a un solo dato*, de
la relación ManyToManyField propuesta:
*Modelo:*
*------------------------------------------------------------------*
from django.db import models
class *Modelo1*(models.Model):
*dato* = models.CharField(max_length=100)
def __unicode__(self):
return 'Dato: %s' % (self.dato)
class *Modelo2*(models.Model):
*relacion2* = models.OneToOneField(Modelo1)
class *UserProfile*(models.Model):
user = models.ForeignKey(User,unique=True)
*relacion1* = models.ManyToManyField(Modelo2)
*------------------------------------------------------------------*
*UserProfile* se relaciona a 3 *Modelo2* (ManyToManyField)
*
*
*Modelo2* se relaciona a un* Modelo1 *3 veces diferentes para cada
*dato*(OneToOneField)
A *dato* en *Modelo1* le asigne 3 diferentes entradas en la bd:
id=1, dato1='abc'
id=2, dato1='def'
id=3, dato1='ghi'
*
*
*Desde la vista:*
*------------------------------------------------------------------*
# usuario registrado
usuario = request.user
# Selecciono los objetos de ese usuario en UserProfile
dato = *UserProfile*.objects.get(user=usuario)
# Obtengo todas las ManyToManyField del *UserProfile* hacia* Modelo2*
dato = dat.*relacion1*.all()
# Iterar sobre los datos conseguidos
for elemento in dato:
datos = elemento.modelo1.dato
*------------------------------------------------------------------*
De esta forma solo me esta retornando 'abc' y no logro hacer que me genere
en una Lista = 'abc','def','ghi'
Preguntas:
- Se supone que al hacer.all() en la vista estaría sacando todos las
relacion1, porque no lo hace?
- De todas estas relaciones porque no logro acceder a cada dato de
cada relación?
Me podrían ayudar a encontrar el problema, gracias.
Saludos.
--
*Diego Alonso Uribe Gamez*
------------------------------
*Desarrollador web*
Twitter: @DiegoUG <http://www.twitter.com/DiegoUG>
Google+: http://gplus.to/diegoug
------------------------------
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/