def patch(self, request, provider_uuid, identity_uuid, export_request_id): data = request.data try: export_request = CoreExportRequest.objects.get(id=export_request_id) except CoreExportRequest.DoesNotExist: return Response("No export request with id %s" % export_request_id, status=status.HTTP_404_NOT_FOUND) serializer = ExportRequestSerializer(export_request, data=data, partial=True) if serializer.is_valid(): serializer.save() return Response(serializer.data) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def patch(self, request, provider_uuid, identity_uuid, export_request_id): data = request.DATA try: export_request = CoreExportRequest.objects.get( id=export_request_id) except CoreExportRequest.DoesNotExist: return Response("No export request with id %s" % export_request_id, status=status.HTTP_404_NOT_FOUND) serializer = ExportRequestSerializer(export_request, data=data, partial=True) if serializer.is_valid(): serializer.save() return Response(serializer.data) return Response(serializer.errors, status=status.HTTP_400_BAD_REQUEST)
def post(self, request, provider_uuid, identity_uuid): """ Create a new object based on DATA Start the ExportRequestThread if not running & Add all images marked 'queued' OR Add self to ExportRequestQueue Return to user with "queued" """ # request.data is r/o data = copy.deepcopy(request.data) owner = request.user.username # Staff members can export on users behalf.. if data.get("created_for") and request.user.is_staff: owner = data.get("created_for") data["owner"] = owner logger.info(data) serializer = ExportRequestSerializer(data=data) if serializer.is_valid(): export_request = serializer.save() instance_export_task.delay(export_request) return Response(serializer.data, status=status.HTTP_200_OK)
def post(self, request, provider_uuid, identity_uuid): """ Create a new object based on DATA Start the ExportRequestThread if not running & Add all images marked 'queued' OR Add self to ExportRequestQueue Return to user with "queued" """ # request.DATA is r/o data = copy.deepcopy(request.DATA) owner = request.user.username # Staff members can export on users behalf.. if data.get('created_for') and request.user.is_staff: owner = data.get('created_for') data['owner'] = owner logger.info(data) serializer = ExportRequestSerializer(data=data) if serializer.is_valid(): export_request = serializer.save() instance_export_task.delay(export_request) return Response(serializer.data, status=status.HTTP_200_OK)