Ich rolle meinen eigenen Fileupload-Handler in Django und möchte den Dateinamen kennen. Ich unterstütze mehr als ein Dateiformat und möchte verschiedene Bearbeitungen in der receive_data_chunk
Methode machen, abhängig davon, welches Dateiformat die hochgeladene Datei hat. Ich dachte, ich würde pragmatisch sein und nur das Dateiformat basierend auf der Dateiendung beurteilen, aber ich kann nicht herausfinden, wie ich den Dateinamen erreichen kann. Wenn ich versuche, die Dateinamen mit so etwas wie der folgenden Code zu extrahieren (bevor das Verfahren genannt wird):Ermitteln des Dateinamens in einem FileUploadHandler
if request.method == 'POST':
p = re.compile('^.*\.sdf$', re.IGNORECASE)
if (p.search(request.FILES['filecontent'].name)) :
self.sdf = True
else:
self.sdf = False
Es scheint, dass ich nie die receive_data_chunk
Methode erreichen. Ich nehme an, der Anruf an request.FILES
löst das Laden irgendwie aus und dann ist es schon fertig? Wie kann ich unterschiedliche Verarbeitung basierend auf Dateiendung in meiner receive_data_chunk
Methode machen?
Hm, interessant, heißt das, ich bekomme eine vollständige Kopie der ganzen Sache? Was bedeutet das, wenn ich eine Datei von sagen, ähm, 3 GB hochlade? – jonalv
Das ist eine gute Frage! Ich glaube nicht, dass irgendwelche der Dateien, mit denen ich zu tun hatte, größer als ein paar MB max waren. – ElPedro