2016-03-29 20 views
8

Sono in grado di caricare i file nella cartella dei media ('/peaceroot/www/media/') che ho istituito in settings.py come di seguitoPagina non trovata 404 file multimediali Django

MEDIA_ROOT = '/peaceroot/www/media/' 
MEDIA_URL = '/media/' 

Ma attraverso Admin ho cercato di accedere al file immagine caricata

http://localhost:8000/media/items/1a39246c-4160-4cb2-a842-12a1ffd72b3b.jpg

allora sto ottenendo errore 404.

il file esiste in peaceroot/www/media/items/1a39246c-4160-4cb2-a842-12a1ffd72b3b.jpg

risposta

23

Aggiunga comunicazione di entrata URL nelle urlpatterns progetto:

from django.conf.urls.static import static 
from django.conf import settings 

... 
urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 
5

Il modo migliore per root_supporto è,

cercare di rendere i media percorso dinamico sarà facile quando tu sposti il ​​tuo progetto.

Settings.py

BASE_DIR = os.path.dirname(os.path.dirname(__file__)) 


MEDIA_ROOT = os.path.join(BASE_DIR, 'media').replace('\\', '/') 
MEDIA_URL = '/media/' 

urls.py

from django.conf import settings 
from django.conf.urls.static import static 

urlpatterns = [ 
    # ... the rest of your URLconf goes here ... 
] + static(settings.STATIC_URL, document_root=settings.STATIC_ROOT) 

Guardate questa

https://docs.djangoproject.com/en/dev/howto/static-files/

Problemi correlati