2016-08-12 9 views
2

私は、このようなシリアライザを持っている:渡す追加引数

secondModelはFirstModelの多対多分野で
class FirstModelSerializer(serializers.ModelSerializer): 

     secondModel = SecondModelSerializer() 

     class Meta: 
      model = FirstModel 
      fields = '__all__' 

FirstModelオブジェクトIDをSecondModelSerializerに渡す方法はありますか?

答えて

2

私は考えた方が簡単でした。私はちょうどこの

class FirstModelSerializer(serializers.ModelSerializer): 

     secondModel = SerializerMethodField() 

     class Meta: 
      model = FirstModel 
      fields = '__all__' 

     def get_secondModel(self, obj): 
      return SecondModelSerializer(obj.secondModel.all(), many=True, context={'first_model_id': obj.id)).data 

のようなコンテキストを使用して、このIDを取得するSecondModelSerializerにself.context.get(「first_model_id」)を使用する必要がありました。

関連する問題