Django rest framework post запрос возвращает 200, но данные не сохраняются в базе данных

когда post запрос отправляется в api, api возвращает Ok в качестве ответа, но никакие данные не вставляются в базу данных.

views.py


@api_view(['POST'])
def createTicketList(request):
    serializer = TicketListSerializer(data=request.data)
    if serializer.is_valid():
        serializer.save()
        return Response(serializer.data)
    else:
        return Response(serializer.errors)

serializer.py


class TicketListSerializer(serializers.ModelSerializer):
    class Meta:
        model = TicketListTable
        fields = '__all__'

    def create(self, validated_data):
        return TicketListTable(**validated_data)

models.py


class TicketListTable(models.Model):
    ticketListName = models.CharField(max_length=50)
    ticketListCreated = models.DateTimeField()
    ticketListUpdates = models.DateTimeField()

    def __str__(self):
        return self.ticketListName

    class Meta:
        app_label = "backend"
        db_table = "TicketListTable"

postman api

postman api post request

Потому что вы не сохраняете TicketeListTable экземпляр в функции сериализатора create. Если вы удалите функцию create, экземпляр будет сохранен. В ModelSerializer уже есть функция create.

https://www.cdrf.co/3.12/rest_framework.serializers/ModelSerializer.html#create

Вернуться на верх