コード例 #1
0
ファイル: views.py プロジェクト: relic7/djdam165
def image_update_list(request, pk=None, alt=1, colorstyle=None,updated_by=None):
    """
    List all image_updates, or create a new image_update.
    """
    try:
        updated_by = request.data['updated_by']
    except:
        updated_by = 'ingest01'
        pass

    if request.method == 'GET':
        image_updates = ImageUpdate.objects.all()
        serializer = ImageUpdateSerializer(image_updates, many=True)
        return Response(serializer.data)

    elif request.method == 'POST':
        serializer = ImageUpdateSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)


    elif request.method == 'PUT':
        if not colorstyle:
            colorstyle = request.data['colorstyle']
        try:
            image_update = ImageUpdate.objects.get(updated_by=updated_by,colorstyle=colorstyle,alt=alt)
        except ImageUpdate.DoesNotExist:
            return Response(status=status.HTTP_404_NOT_FOUND)
        serializer = ImageUpdateSerializer(image_update, data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data)
        return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
コード例 #2
0
ファイル: views.py プロジェクト: relic7/djdam165
def image_update_detail(request, format=None, pk=None,alt=1,colorstyle=None,updated_by=None):
    """
    Retrieve, update or delete an ImageUpdate instance.
    """
    try:
        if not colorstyle:
            colorstyle = request.GET['colorstyle']
    except:
        pass

    try:
        updated_by = request.data['updated_by']
    except:
        updated_by = 'djdam'
        pass

    try:
        image_update = ImageUpdate.objects.get(updated_by=updated_by,colorstyle=colorstyle, alt=1)
    except ImageUpdate.DoesNotExist:
        try:
            image_update = ImageUpdate.objects.get(updated_by=updated_by,colorstyle=colorstyle,alt=alt)
        except ImageUpdate.DoesNotExist:
            return Response(status=status.HTTP_404_NOT_FOUND)

    if request.method == 'GET':
        serializer = ImageUpdateSerializer(image_update)
        return Response(serializer.data)

    elif request.method == 'PUT':
        if not colorstyle:
            colorstyle = request.data['colorstyle']
        image_update = ImageUpdate.objects.get(updated_by=updated_by,colorstyle=colorstyle, alt=alt)
        serializer = ImageUpdateSerializer(image_update, 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 == 'POST':
        serializer = ImageUpdateSerializer(data=request.data)
        if serializer.is_valid():
            serializer.save()
            return Response(serializer.data, status=status.HTTP_201_CREATED)
        # else if there do a put update
        else:
            image_update = ImageUpdate.objects.get(updated_by=updated_by, colorstyle=colorstyle, alt=alt)
            serializer = ImageUpdateSerializer(image_update, 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 == 'POST' and ImageUpdate.objects.get(colorstyle=colorstyle, alt=alt):
        if not colorstyle:
            colorstyle = request.data['colorstyle']
        image_update = ImageUpdate.objects.get(updated_by=updated_by,colorstyle=colorstyle, alt=alt)
        serializer = ImageUpdateSerializer(image_update, 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':
        image_update = ImageUpdate.objects.get(colorstyle=colorstyle, alt=alt)
        image_update.delete()
        return Response(status=status.HTTP_204_NO_CONTENT)