Ich habe eine POST API geschrieben, die eine Datei veröffentlicht. Ich möchte die Datei öffnen und einen JSON-Inhalt in der Datei analysieren. Aber die Zeile os.path.join() scheint nicht zu funktionieren. Ich bekomme "'InMemoryUploadedFile' Objekt hat kein Attribut 'startswith'" Ausnahme. Habe den folgenden Code verwendet.os.path.join() gibt InMemoryUploadFile Fehler
def schedule_load(file_name):
print file_name
file_json = default_storage.open(os.path.join("schedule_files", file_name), 'r')
var = file_json.read()
print var
file_json.close()
schedule = json.loads(var)
Meine POST-Methode:
@api_view(['POST'])
def post_schedule(request):
print "post_schedule"
if request.method == 'POST':
print "if POST"
form = ScheduleForm(request.POST, request.FILES)
file_name = form['schedule_file'].value()
if form.is_valid():
print "is_valid"
form.save()
schedule_load(file_name)
return JsonResponse({"status": "success"}, status=status.HTTP_200_OK)
else:
return JsonResponse({"status": "Invalid file"}, status=status.HTTP_200_OK)