Wählen Sie den Dateinamen der hochzuladenden Datei mit Django
Ich bin das hochladen von Bildern (dargestellt durch ein FileField) und ich muss benennen Sie diese Dateien, wenn Sie hochgeladen werden.
Möchte ich Sie formatiert sein wie:
"%d-%d-%s.%s" % (width, height, md5hash, original_extension)
Ich hab die Dokumentation gelesen aber ich weiß nicht, ob ich schreiben müssen, meine eigenen FileSystemStorage Klasse oder meiner eigenen FileField-Klasse oder ... ? Alles ist so verlinkt, ich weiß nicht, wo zu beginnen.
- Seine hier schon beantwortet wurden ich denke, stackoverflow.com/questions/25652809/...
Du musst angemeldet sein, um einen Kommentar abzugeben.
Brauchen Sie nicht zu schreiben, Ihr eigenes FileStorage-Klasse oder alles, was kompliziert ist.
Den 'upload_to' parameter auf Datei/ImageFields kann eine Funktion zurückgibt, die den Pfad/die Datei zu verwenden.
Wie dies schon beantwortet wurde hier
Mein erste Instinkt, wenn Sie dies Lesen, war, dass Sie benötigen, um eine überlastung der save-Methode auf das Modell, und verwenden Sie die os.rename () - Methode, aber das verursacht eine Menge Aufwand, und ist in der Regel nur ein Streit von Anfang bis Ende. Wenn Sie wollen einfach nur die Datei umbenennen, aber nicht wollen, um jede körperliche änderungen (skalieren, duplizieren, etc.), dann würde ich auf jeden Fall empfehlen den Ansatz arcanum vorschlägt oben.