Sto tentando di restituire una HttpResponse da Django Rest Framework che include i dati di 2 modelli collegati. I modelli sono:Django Rest Framework - Ottieni il campo modello correlato nel serializzatore
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')
Mi piacerebbe avere un serializzatore per il modello bottiglia che include informazioni relative dal vino.
ho provato:
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')
che non funziona.
Qualche idea su come potrei farlo?
Grazie :)
Grazie per questo, sono quasi. Quello che @ tom-christie spiega funziona per ottenere l'oggetto stesso, ma non sono in grado di ottenere tutti i campi dall'oggetto Wine .. – bpipat
Prova 'source = '*'' come argomento 'RelatedField'. – mariodev
Ricevo ancora il nome Unicode nel risultato della query. E provare wine.color nei campi non funziona Che cosa cambia source = '*'? – bpipat