Django Rest Frameworkから2つのリンクされたモデルのデータを含むHttpResponseを返そうとしています。 モデルは以下のとおりです。Django Rest Framework - シリアライザで関連するモデルフィールドを取得
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')
私は、関連するワインからの情報を含むボトルモデルのシリアライザを持っているしたいと思います。
私が試した:動作しません
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')
を。
どのようにすればよいのでしょうか?
感謝:)そのような単純な
このためおかげで、私はほとんどそこです。 @ tom-christieがオブジェクト自体を取得する方法について説明していますが、Wineオブジェクトからすべてのフィールドを取得できません。 – bpipat
'RelatedField'引数として' source = '*' 'を試してください。 – mariodev
私はまだクエリの結果でユニコード名を取得します。フィールドでwine.colorを試してもうまくいきません source = '*'は何の変更ですか? – bpipat