update queryset framework errors create python django serialization foreign-keys django-rest-framework

python - queryset - Django Rest Framework-Obtener campo de modelo relacionado en serializador



serializer create django (1)

Estoy tratando de devolver un HttpResponse de Django Rest Framework, que incluye datos de 2 modelos vinculados. Los modelos son:

class Wine(models.Model): color = models.CharField(max_length=100, blank=True) country = models.CharField(max_length=100, blank=True) region = models.CharField(max_length=100, blank=True) appellation = models.CharField(max_length=100, blank=True) class Bottle(models.Model): wine = models.ForeignKey(Wine, null=False) user = models.ForeignKey(User, null=False, related_name=''bottles'')

Me gustaría tener un serializador para el modelo de botella que incluye información del vino relacionado.

Lo intenté:

class BottleSerializer(serializers.HyperlinkedModelSerializer): wine = serializers.RelatedField(source=''wine'') class Meta: model = Bottle fields = (''url'', ''wine.color'', ''wine.country'', ''user'', ''date_rated'', ''rating'', ''comment'', ''get_more'')

que no funciona

¿Alguna idea de cómo podría hacer eso?

Gracias :)


Tan simple como eso, agregar el WineSerializer como un campo lo resolvió.

class BottleSerializer(serializers.HyperlinkedModelSerializer): wine = WineSerializer(source=''wine'') class Meta: model = Bottle fields = (''url'', ''wine'', ''user'', ''date_rated'', ''rating'', ''comment'', ''get_more'')

con:

class WineSerializer(serializers.HyperlinkedModelSerializer): class Meta: model = Wine fields = (''id'', ''url'', ''color'', ''country'', ''region'', ''appellation'')

Gracias por la ayuda @mariodev :)