-
перерыл и форум и все источники. Как мне кажется, всё настроил верно, но картинки не показываются...
Windows ХР, используется встроенный джанговский сервер.
сама картинка лежит в виндовсе E:\MySites\vodoley\public\img\
проект - vodoley
settings:
urls:MEDIA_ROOT = ''
MEDIA_URL = '/public/'
ADMIN_MEDIA_PREFIX = '/media/admin/'
шаблон:if settings.DEBUG:
urlpatterns += patterns('',
(r'^public/(?P<path>.*)$', 'django.views.static.serve',
{'document_root': settings.MEDIA_URL}),
)<img src="{{ MEDIA_URL }}img/button_del.png"
исходный код в браузере:
при показе картинка не выводится.<img src="/public/img/button_del.png">
если в браузере набрать адрес картинки http://127.0.0.1:8000/public/img/button_del.png
получим:
помогите разобраться, пожалуйста.Request Method: GET
Request URL: http://127.0.0.1:8000/public/img/button_del.png
"/public/img/button_del.png" does not exist
В MEDIA_URL вставлял и виндошный путь к файлу, и полный путь "http://127.0.0.1:8000/public/" , буквально все варианты перепробовал...
в static.py выполнение заходит, я вставлял трассировку, да собственно и ошибка оттуда же ведь выводится. -
MEDIA_ROOT должен быть прописан:
# Absolute path to the directory that holds media. # Example: "/home/media/media.lawrence.com/" MEDIA_ROOT = '' -
И в урлах document_root = MEDIA_ROOT, а не MEDIA_URL
-
В urls.py:
В settings.py:from django.conf import settings
import os.path
site_media = os.path.join(
os.path.dirname(__file__), 'templates'
)
if settings.DEBUG:
urlpatterns += patterns('',
(r'^site_media/(?P<path>.*)$', 'django.views.static.serve',
{ 'document_root': site_media }
),
)
В самом шаблоне html используешь таким образомMEDIA_ROOT = ''
MEDIA_URL = ''
TEMPLATE_DIRS = (
"c:/project/my_new_project/templates/",
)
Похоже на грязный хак немного, но для дебага на встроенном сервере пойдёт.<img src="/site_media/images/kartinka.gif"/> -
Спасибо, получилось.
Проблема была в "полном пути" - мне казалось что нужно было указывать протокол, типа http:// или file:// ну или путь от корня диска. Ан нет, просто тупо виндошный путь к папке включая букву диска.
Внимание! Это довольно старый топик, посты в него не попадут в новые, и их никто не увидит. Пишите пост, если хотите просто дополнить топик, а чтобы задать новый вопрос — начните новый.


