2015-04-16 2 views
0

У меня проблема с моими статическими и медиа-настройками, поэтому мои загруженные изображения не отображаются на моей странице сайта.Путь MEDIA_URL не отображается

В моей "settings.py" У меня есть:

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

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

STATICFILES_DIRS = (
    os.path.join(BASE_DIR, '..', 'static'), 
) 

В моей "models.py" У меня есть:

expert_photo = models.ImageField(upload_to='profiles') 

Некоторые "urls.py":

from django.conf.urls import patterns, include, url 
from django.contrib import admin 

urlpatterns = patterns('', 

    url(r'^admin/', include(admin.site.urls)), 

    (r'^tinymce/', include('tinymce.urls')), 

    url(r'^experts/all/$', 'expert.views.experts', name='experts'), 
    url(r'^experts/get/(?P<expert_id>\d+)/$', 'expert.views.expert', name='expert'), 

) 

И после всего этого, когда я иду на свою страницу, я вижу, что на картинке есть ссылка, например:

http://127.0.0.1:8000/static/profiles/i_vagin.jpg 

Но это должно быть:

http://127.0.0.1:8000/static/media/profiles/i_vagin.jpg 

Так как я могу исправить это?

+0

Нет, это должно быть 'http: //127.0.0.1: 8000/media/profiles/i_vagin.jpg', потому что ваш MED IA_URL - '/ media /' not '/ static/media /'. –

+0

Я попытался изменить «/ media /» на «/ static/media /», но все еще имеет ссылку без включенного «медиа» ... Так что это не ответ. –

+0

Нет, поэтому я разместил его как комментарий, а не ответ. –

ответ

2

Файлы мультимедиа по умолчанию не используются во время разработки. Чтобы включить медиа-файл служит, вам необходимо добавить следующий код в файле urls.py:

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

urlpatterns = patterns('', 
    # ... the rest of your URLconf goes here ... 
) + static(settings.MEDIA_URL, document_root=settings.MEDIA_ROOT) 

Источник: Django docs

Update

Вам также необходимо для доступа к изображениям в ваши шаблоны вот так: {{ expert_photo.url }}

+0

Да, я читал об этом, прежде чем создавать эту тему, и попробовал ее прямо сейчас ... Нет успеха ... По-прежнему получил '', но нужно '' –

+0

@s_spirit Вы получаете доступ к изображениям в ваших шаблонах следующим образом: ' {{expert_photo.url}} '? – xyres

+0

Конечно, я не ...:/Это был ответ. Предыдущий разработчик передал его через '{% static expert.expert_photo%}', и я пропустил эту вещь ... Все работает прямо сейчас, спасибо. –

Смежные вопросы