Как выполнить пакетное обновление в django rest api - PullRequest
0 голосов
/ 02 ноября 2019

структура таблицы

cart_id, product_id, quantity,customer_id

просмотр

class CartUpdateView(generics.UpdateAPIView):
    queryset = models.Cart.objects.all()
    serializer_class = CartSerializer

    def put(self, request, *args, **kwargs):
        data = request.DATA
        serializer = CartSerializer(data=data, many=True)

        if serializer.is_valid():
            serializer.save()
            return Response(status=HTTP_200_OK)
        else:
            return Response(status=HTTP_400_BAD_REQUEST)

сериализаторы

class CartSerializer(serializers.ModelSerializer):
    class Meta:
        model = Cart
        fields = ('cart_id', 'quantity', 'customer_id', 'product_id')

модель

class Cart(models.Model):
    cart_id = models.IntegerField()
    product_id = models.IntegerField()
    quantity = models.IntegerField()
    customer_id=models.IntegerField()

Я пытаюсь обновить свою корзинус данными

{
    [cart_id:1, product_id:3, quantity:5,customer_id:2],
    [cart_id:2, product_id:4, quantity:2,customer_id:2],
    [cart_id:3, product_id:5, quantity:1,customer_id:2],
    [cart_id:4, product_id:8, quantity:1,customer_id:2],
}

Но это не работает, как ожидалось. До сих пор я сделал только обновление одной строки. Есть ли способ выполнить массовое обновление .. Нужно ли переопределить какие-либо методы ..!

...