/ / ¿Cómo puedo obtener los datos no validados en django rest dramework 3 - django, django-rest-framework

¿Cómo puedo obtener los datos no validados en django rest dramework 3 - django, django-rest-framework

Django resto framework 3 dice usar algo como esto

def create(self, request, *args, **kwargs):
serializer = self.get_serializer(data=request.data)
if serializer.is_valid(raise_exception=True):
serializer.save(user=request.user)  # Include the user when saving.

Ahora mi problema es que quiero arreglar los datos antes de este paso porque está en formato differnet según lo requiere el serializador.

Así que los datos están validados y no puedo llegar a este paso.

Quiero arreglar los datos antes de que llegue a esta etapa.

Es posible

Respuestas

1 para la respuesta № 1

request.data contiene datos en bruto / no validados. Puede ser reescrito como

 def create(self, request, *args, **kwargs):
# incoming data validation goes here
raw_data = request.data
fixed_data = process_data_function(raw_data)
serializer = self.get_serializer(data=fixed_data)
if serializer.is_valid(raise_exception=True):
serializer.save(user=request.user)  # Include the user when saving.