2016-03-23 2 views
1

ich eine Klasse in meinem models.py haben:Wie django bekommen Sie eine Bilddatei über Vorrichtungen zum Hochladen

class Car(models.Model): 
    id = models.UUIDField(primary_key=True, default=uuid.uuid4) 
    create_date = models.DateTimeField('date added', auto_now_add=True) 
    modify_date = models.DateTimeField('date modified', default=timezone.now) 
    name = models.CharField(max_length=200) 
    image_file = models.ImageField(
     upload_to=upload_to_company, null=True, blank=True) 

und JSON für die Lampen wie folgt aus:

[ 
     { 
     "model": "polls.car", 
     "fields": { 
      "id":"09734145-7a15-4c84-8b7c-eaab4112cbaa", 
      "name": "VW", 
      "create_date": "2015-01-01T00:00:00+00:00" 
     } 
     } 
    ] 

, die ich laden, wie eine Leuchte. Jetzt möchte ich, dass es auch ein Bild lädt, wenn ich "image_file":"VW.jpg" einfüge (VW.jpg befindet sich im selben Ordner wie JSON). VW.jpg erscheint im Admin-Bereich, aber es lädt das eigentliche Bild nicht hoch.

Wer hat eine Idee oder einen Tipp, wo man hinschauen sollte?

Antwort

0

Keine Ahnung, warum ich nicht früher zu dieser Schlussfolgerung gekommen bin, aber es funktioniert, wenn Sie einfach die Datei mit dem in der Fixtures-Datei angegebenen Namen in das Verzeichnis legen, in dem Sie es haben wollen. Zum Beispiel:

[ 
     { 
     "model": "polls.car", 
     "fields": { 
      "id":"09734145-7a15-4c84-8b7c-eaab4112cbaa", 
      "name": "VW", 
      "create_date": "2015-01-01T00:00:00+00:00", 
      "image_file":"VW.jpg" 
     } 
     } 
    ] 

und setzten dann VW.jpg, wo Ihr media Verzeichnis befindet, zum Beispiel:

media/VW.jpg

Es ist nicht diese Art und Weise hochgeladen bekommen, aber es ist in der Datenbank und zugänglich über die Admin Panel

Verwandte Themen