Digamos que tenemos el siguiente modelo:
class Classroom(models.Model):
room_number = [....]
class Teacher(models.Model):
name = [...]
tenure = [...]
classroom = models.ForeignKey(Classroom)
Digamos que en lugar de obtener un resultado como este por la función ManyRelatedPrimaryKeyField:
{
"room_number": "42",
"teachers": [
27,
24,
7
]
},
que devuelva algo que incluya la representación completa del modelo relacionado, como:
{
"room_number": "42",
"teachers": [
{
'id':'27,
'name':'John',
'tenure':True
},
{
'id':'24,
'name':'Sally',
'tenure':False
},
]
},
es posible? ¿Si es así, cómo? ¿Y es esta una mala idea?
depth
qué no haría lo que necesita en este caso y para explicar la excepción que está viendo y cómo lidiar con eso.many=True
así...TeacherSerializer(source='teacher_set', many=True)
. De lo contrario, recibía el siguiente error:The serializer field might be named incorrectly and not match any attribute or key on the 'RelatedManager' instance. Original exception text was: 'RelatedManager' object has no attribute 'type'.
..._set
por defecto. Consulte los documentos de Django para más detalles: docs.djangoproject.com/en/1.10/ref/models/relations/…