Я новичок в ФПИ и питона так легко идти на меня ... Я могу успешно получить объекты RoadSegment, но я не могу понять, как обновить существующий объектDRF Обновление существующих объектов
У меня есть следующие модель:
class RoadSegment(models.Model):
location = models.CharField(max_length=100)
entryline = models.CharField(unique=True, max_length=100)
trafficstate = models.CharField(max_length=100)
со следующим сериализатором:
class RoadSegmentSerializer(serializers.HyperlinkedModelSerializer):
class Meta:
model = RoadSegment
fields = ('entryline','trafficstate','location')
А следующий вид
class RoadSegmentViewSet(viewsets.ModelViewSet):
queryset = RoadSegment.objects.all()
serializer_class = serializers.RoadSegmentSerializer
Мой urls.py выглядит следующим образом:
router.register(r'roadsegment', RoadSegmentViewSet, base_name='roadsegment-detail')
GET http://127.0.0.1:8000/api/v1/roadsegment/ возвращает
[{"entryline":"2nd","trafficstate":"main","location":"downtown"},{"entryline":"3nd","trafficstate":"low","location":"downtown"}]
Я хотел бы иметь возможность обновить существующий объект
ЗАПЛАТУ http://127.0.0.1:8000/api/v1/roadsegment/
{"entryline":"2nd","trafficstate":"SOMENEWVALUE","location":"downtown"}
Я не вижу никаких достопримечательностей, как идентифицируются ваши предметы. Обычно идентификатор указывается в URL-адресе ресурса, то есть '' '/ api/v1/roadsegment/42 /' ''. –
Вы заглянули в официальный учебник? Вот пример, который очень похож на ваш случай: http://www.django-rest-framework.org/tutorial/3-class-based-views/ –