2016-03-29 17 views
8

jestem w stanie przesłać pliki do folderu mediów ('/peaceroot/www/media/'), które postawiłem w settings.py jak poniżejNie znaleziono strony 404 Django pliki multimedialne

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

Ale przez administratora Próbowałem dostępu przesłanego pliku obrazu

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

następnie otrzymuję błąd 404.

Plik istnieje na peaceroot/www/media/items/1a39246c-4160-4cb2-a842-12a1ffd72b3b.jpg

Odpowiedz

23

Dodaj multimedia wpis URL w tam wzorce projektu:

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

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

Lepszym sposobem MEDIA_ROOT jest

starają się uczynić mediów ścieżka dynamiczna będzie łatwe, gdy zmieniasz swój projekt.

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) 

Spójrz na to

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

Powiązane problemy