Django REST Updateview with PUT POST

2019-08-08 05:08发布

问题:

Within a listview, with many objects, I want to change their value live by javascript, then save them by a POST/PUT http request to the object updateview, searching I've found that it maybe possible with Django REST framework.

I've read the Django REST framework manual reference

but didn't understand how to set up the UpdateView call:

model.py

class presetrows(models.Model):
    progressivo = models.ForeignKey(preset)
    value = models.BigIntegerField(blank=True, null=True) 

views.py

class RighePresetListView(ListView):
    queryset = presetrows.objects.filter(stato=True)

class RighePresetUpdateView(UpdateView):
    model = presetrows
    exclude=()

but where should I add the update(request, *args, **kwargs) from django REST?

回答1:

You don't really needs to define update(request, *args, **kwargs) in DRF views. For update api you can use this

class RighePresetUpdateView(UpdateAPIView):

    serializer_class = 'your serializer'
    queryset = presetrows.objects.filter(stato=True)

Provides put and patch method handlers implicitly.