API 経由で公開する 2 つのモデルがRegionValue
ありForeignKey
ますMapAnswer
。エンドポイント内に sa フィールドrest_framework
を作成することによって構築された API でこれを表現したいと考えています。私のシリアライザーは次のようになります。RegionValue
MapAnswer
rest_framework
class RegionValueSerializer(serializers.ModelSerializer):
class Meta:
model = RegionValue
fields = ('region_id', 'value')
class MapAnswerSerializer(serializers.ModelSerializer):
regionvalue_set = RegionValueSerializer(many=True, allow_add_remove=True, required=False)
declined = serializers.BooleanField(required=False)
class Meta:
model = MapAnswer
fields = ('declined', 'regionvalue_set')
これは読み取りの観点からは正常に機能しますが、 を更新すると、既存の RegionValue にリンクするのではなく、常にregionvalue_set
新しい が作成されるという問題があります。RegionValue
フィールドに「id」を含めると、RegionValueSerializer
この問題は解決しますが、主キーを公開したくないです! は、theirおよびthey が関連付けられているRegionValue
によって一意に決定されます。region_id
MapAnswer