Ich habe viele Fragen und Artikel gelesen, kann aber nicht finden, was mir fehlt.
Hier ist mein conf:
settings.py
%Vor%urls.py
%Vor%Wie auch immer, meine Medien werden bedient, denn wenn ich nach Ссылка gehe, habe ich mein Bild.
Aber wenn ich in der Vorlage gehe, gehe ich so vor:
%Vor% Ich habe nur den Bildpfad. Wenn ich in html {{MEDIA_URL}}
durch '/ media /' ändere, funktioniert es.
So scheint es, dass mein MEDIA_URL
nicht in der Vorlage eingestellt ist und soweit ich gesucht habe, kann ich nicht sehen, was ich vermisst habe.
Ich bin auf Django 1.8.2. Wenn Sie irgendwelche Informationen brauchen, fragen Sie mich einfach.
models.ImageField
hat eine Eigenschaft namens url
, die Ihnen den durchsuchbaren Pfad Ihres Bildes gibt.
Sie sollten artist.artist_image.url
anstelle von MEDIA_URL
manuell für Ihren Bildnamen verwenden:
-
Stellen Sie sicher, dass artist_image
nicht None
ist, andernfalls ruft .url
eine Ausnahme auf.
Sie müssen das % co_de definieren % Vorlagenkontextprozessor in Ihren Einstellungen für die django.template.context_processors.media
-Variable, damit sie im Vorlagenkontext vorhanden ist.
Wenn dieser Prozessor aktiviert ist, enthält jedes
MEDIA_URL
ein VariableRequestContext
, die den Wert der EinstellungMEDIA_URL
angibt.
Wenn Sie dies in Ihre MEDIA_URL
einfügen, wird settings
in den Vorlagenkontext eingeschlossen. In den Django 1.8-Einstellungen ist standardmäßig nicht enthalten . Wir müssen explizit festlegen.
Tags und Links python django python-3.x