Foros del Web » Programando para Internet » Python »

Consultar Noob al actualizar registros con REST

Estas en el tema de Consultar Noob al actualizar registros con REST en el foro de Python en Foros del Web. Estimada comunidad, Tengo una consulta, estoy aprendiendo a usar rest framework (y django en general) y quiero actualizar un registro, este proceso funciona bien, ya ...
  #1 (permalink)  
Antiguo 12/10/2014, 17:58
 
Fecha de Ingreso: junio-2013
Mensajes: 19
Antigüedad: 10 años, 10 meses
Puntos: 0
Pregunta Consultar Noob al actualizar registros con REST

Estimada comunidad,

Tengo una consulta, estoy aprendiendo a usar rest framework (y django en general) y quiero actualizar un registro, este proceso funciona bien, ya que actualiza los datos, el problema, es que si quiero actualizar un solo registro, de todas formas me pide enviar todos, ya que si no, me dice que debo enviarlo porque son obligatorios, entonces, lo que yo quiero, es que si envío un solo dato, me modifique sólo dicho valor, sin importar el resto.

Lo que tengo en la vista es algo así

Código:
#@csrf_exempt
@api_view(['GET', 'PUT', 'DELETE'])
def persona_detail(request, pk, format=None):

    try:
        persona = Persona.objects.get(pk=pk)
    except Persona.DoesNotExist:
        return Response(status=status.HTTP_404_NOT_FOUND)

    if request.method == 'GET':
        serializer = PersonaSerializer(persona)
        return JSONResponse(serializer.data)
    elif request.method == 'PUT':
        serializer = PersonaSerializer(persona, data=request.DATA)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
    elif request.method == 'DELETE':
        persona.delete()
        return Response(status=status.HTTP_204_NO_CONTENT)
De que forma podría hacerlo?


De antemano
Gracias
  #2 (permalink)  
Antiguo 14/10/2014, 13:44
Avatar de razpeitia
Moderador
 
Fecha de Ingreso: marzo-2005
Ubicación: Monterrey, México
Mensajes: 7.321
Antigüedad: 19 años, 1 mes
Puntos: 1360
Respuesta: Consultar Noob al actualizar registros con REST

Lo que haces, incluso sin el REST framework es que siempre envías todos los datos.
  #3 (permalink)  
Antiguo 19/10/2014, 12:42
 
Fecha de Ingreso: junio-2013
Mensajes: 19
Antigüedad: 10 años, 10 meses
Puntos: 0
Respuesta: Consultar Noob al actualizar registros con REST

Cita:
Iniciado por razpeitia Ver Mensaje
Lo que haces, incluso sin el REST framework es que siempre envías todos los datos.
Lo que hice por el momento para solucionar el problema es cambiar

Código:
serializer = LocalSerializer(local, data=request.DATA)
por

Código:
serializer = LocalSerializer(local, data=request.DATA, partial=True)
ya que según la [URL="http://www.django-rest-framework.org/api-guide/serializers"]web de rest-framework[/URL], mencionan el partial=True

Cita:
By default, serializers must be passed values for all required fields or they will throw validation errors. You can use the partial argument in order to allow partial updates.
Me imagino que sólo funciona para rest y no django en general, pero al menos, me ha ayudado a salir del paso.



Saludos

Etiquetas: consultar, django, noob, registros, rest
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 04:21.