2016-05-29 14 views
0

Ich habe die Medien-URL und Medienwurzel wie folgt.Medien-URL nicht richtig aufgelöst

MEDIA_URL = '/media/' 

MEDIA_ROOT = os.path.join(BASE_DIR, MEDIA_URL) 

mein urls.py ist

if settings.DEBUG: 
    # static files (images, css, javascript, etc.) 
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

ich es in der Vorlage am Zugriff auf wie folgt:

<img class="hl" src="{{ MEDIA_URL }}prop/image0.png" /></a> 

Die URL ersetzt, wenn richtig gemacht ist, was /media/prop/image0.png ist.

Aber es sagt der Medienstandort wird nicht gefunden.

+0

Also, was haben Sie konfiguriert, um zu sehen rve Dateien bei MEDIA_URL? –

+0

Media_root wurde nicht ordnungsgemäß erstellt. So ersetzt es durch den absoluten Pfad. Es funktioniert jetzt gut. –

+0

Die Variable MEDIA_ROOT konnte den absoluten Pfad, der das Problem verursacht hat, nicht ermitteln. Ich habe es korrigiert und es funktioniert gut. –

Antwort

0

Ich empfehle Ihnen, staticfile für diesen Zweck zu verwenden, weil Sie ein bestimmtes Bild verwenden und nicht etwas, das in der Zukunft hochgeladen wird.

Wenn Sie sich entscheiden, statische Dateien zu verwenden, um das Bild in Ihrem statischen Ordner setzen und diese dann verwenden:

<img src="{% static 'image0.png' %}" style=""> 

Vergessen Sie nicht, Ihre Static zu laden:

{% load staticfiles %} 

By the way Wenn Sie in Zukunft Ihre Mediendateien in Ihren Vorlagen verwenden möchten, müssen Sie Folgendes tun:

{% for image in images %} 
    <img src="{{ image.url }}" class="h1"> 
{% endfor %} 
+0

Die Dateien werden vom Benutzer hochgeladen, so dass statische Verwendung nicht möglich ist. Ich habe das Problem mit meiner settings.py gefunden. Die Variable MEDIA_ROOT konnte den absoluten Pfad, der das Problem verursacht hat, nicht ermitteln. Ich habe es korrigiert und es funktioniert gut. –

Verwandte Themen