2016-08-13 5 views
1

первое сообщение, поэтому будьте нежны.страница не найден django.views.static.serve

Я пытаюсь показать статическое изображение в django. Я могу загрузить изображение в свой медиа-каталог, но когда я пытаюсь его отобразить, я ничего не получаю. Если я скопировать URL в браузер я получаю ...

Страница не найдена (404) Запрос Метод: GET Request URL: http://127.0.0.1:8000/media/Will_and_Matt.jpg Воспитанный: django.views.static.serve

подробно. ру

... 
<img src="{{ student.photo.url }}" class="img-responsive"> 
... 

model.py

class Student(models.Model): 
    photo = models.FileField(blank=True, null=True) 

проект urls.py

from django.conf.urls import url, include 
from django.contrib import admin 
from django.conf import settings 
from django.conf.urls.static import static 


urlpatterns = [ 
    url(r'^admin/', admin.site.urls), 
    url(r'^opencmis/', include('opencmis.urls')), 
] 

if settings.DEBUG: 
    urlpatterns += static(settings.STATIC_URL, document_root=settings.STATIC_URL) 
    urlpatterns += static(settings.MEDIA_URL, document_root=settings.MEDIA_URL) 

settings.py

STATIC_URL = '/static/' 
STATIC_ROOT = os.path.join(BASE_DIR, 'static') 

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

Моя форма обновления работает как он создал папку средств массовой информации и размещает изображения в нем.

Шаблон URL, похоже, соответствует/media, так как он не дает ошибки там, он просто не отображает изображение.

Любые идеи?

+1

'document_root = settings.STATIC_URL' должен быть [' document_root = settings.STATIC_ROOT'] (https://docs.djangoproject.com/en/1.10/howto/static-files/#serving-static-files -during-development) и аналогичный для 'MEDIA_ROOT'. Вам нужен путь к файловой системе, а не URL. – dhke

+0

Вы, сэр, являетесь джентльменом. Это сработало отлично! – user1738005

ответ

0

document_root = settings.STATIC_URL должен быть document_root = settings.STATIC_ROOT и аналогичен для MEDIA_ROOT. Вам нужен путь к файловой системе, а не URL. - dhke