Как я могу изменить сопоставление полей html-формы со значением полей сериализатора в DRF?

#python-3.x #serialization #django-rest-framework

Вопрос:

У меня есть эти вложенные сериализаторы, в которых поля не соответствующим образом сопоставлены с полями html-формы на странице API для просмотра по умолчанию в django rest_framework, я настроил представление ответа, и теперь я хочу сопоставить эти значения с соответствующими полями HTML-формы

Ниже приведен мой serializer

 class NestedtLocationSerializer(gis_serializers.GeoFeatureModelSerializer):
    class Meta:
        model = Location
        geo_field = 'geometry'
        fields = (
            'type',
            'is_mobile',
            'name',
            'address',
            'geometry',
        )


class NestedFloorplanSerializer(serializers.ModelSerializer):
    class Meta:
        model = FloorPlan
        fields = (
            'floor',
            'image',
        )


class DeviceLocationSerializer(serializers.ModelSerializer):
    location = NestedtLocationSerializer()
    floorplan = NestedFloorplanSerializer(required=False, allow_null=True)

    class Meta:
        model = DeviceLocation
        fields = (
            'location',
            'floorplan',
            'indoor',
        )
 

с помощью вышеперечисленных серилайзеров я получаю это:-
Ответ:-

введите описание изображения здесь

Но в полях html-формы значения is_mobile , type , name не загружаются в поля html-формы:- введите описание изображения здесь

Есть ли какой-либо способ, которым я могу управлять сопоставлением этих значений по умолчанию с соответствующими полями сериализатора на просматриваемой странице django-rest-framework??

Комментарии:

1. Как отображается форма?

2. Это страница для просмотра, которую drf предоставляет по умолчанию, я не понял ваш вопрос ясно??

3. Извините, это моя вина, я думал, что форма, которую вы показываете, была написана вами

4. Используйте пользовательский BrowsableAPIRenderer класс

5. Я думаю, что это связано с gis_serializers пакетом, а не с drf