Вложенный сериализатор Django "многие ко многим
Привет, у меня есть класс widgets, который может иметь несколько камер и несколько анализов, связанных с ним. Я хочу вернуть камеры и связанные с ними виджеты как объект, потому что если мы удалим камеры, я хочу получить [{camera: null}]
class CameraWidgetSerializer(serializers.ModelSerializer):
    class Meta:
        model = CameraWidget
        fields = ('camera',)
class AnalysisWidgetSerializer(serializers.ModelSerializer):
    class Meta:
        model = AnalysisWidget
        fields = ('analysis',)
class WidgetSerializer(ModelSerializerWithValidation):
    cameras = CameraWidgetSerializer(many=True)
    analyses = AnalysisWidgetSerializer(many=True)
это упрощенные модальные формы
class CameraWidget(models.Model):
    """ Association class used to link between cameras and widget """
    
    camera = models.ForeignKey(
        Camera,
        models.SET_NULL,
        help_text='The camera related to the widget',
        related_name='cameras_widgets',
        blank=False,
        null=True
    )
    widget = models.ForeignKey(
        Widget,
        models.CASCADE,
        help_text='The widget containing the camera',
        related_name='cameras_widgets',
        blank=True,
        null=True
    )
class Widget(models.Model):
    analyses = models.ManyToManyField(Analysis, through='AnalysisWidget')
    cameras = models.ManyToManyField(Camera, through="CameraWidget")
мне удалось сделать это, разделив вход и выход таким образом
cameras_ids = serializers.PrimaryKeyRelatedField(queryset=Camera.objects.all(), many=True, write_only=True)
cameras = serializers.PrimaryKeyRelatedField(queryset=Camera.objects.all(), many=True, write_only=True)
но я хочу, чтобы get и post имели одинаковую структуру, то есть "камеры" в теле обоих запросов сохраняя при этом валидацию DRF для этих полей