Это определенно локальный путь. Вам нужен либо путь относительно корня документа (по умолчанию Django не обслуживает медиафайлы, его не рекомендуется использовать за пределами среды тестирования), либо абсолютный URL-адрес, если файл находится в другом (суб) домене ( например, локальный хост Apache, который обслуживает мультимедийные файлы).
Если вы используете относительные пути, помните, что путь будет относительно страницы, на которой указан путь (т. Е. Если вы поместите его в файл CSS, он будет относительно файла CSS; если вы поместите его в шаблоне это будет относиться к любой странице, показанной с этим шаблоном).
Если вы используете абсолютные пути, имейте в виду, что путь будет относительно корня документа этого (суб) домена.
РЕДАКТИРОВАТЬ: НЕТ, правда. Это путь. Путь в CSS или HTML будет проанализирован вашим браузером. Таким образом, даже если вы запустите объект на локальном хосте, абсолютный путь (начиная с /
) будет проанализирован относительно корня документа (то есть передан в разрешение URL Django).
Если ваш сайт работает на http://localhost:8000
, /home/logic/quote/template/hummingbirds.gif
будет обрабатываться как http://localhost:8000/home/logic/quote/template/hummingbirds.gif
, т. Е. Ваш браузер отправит HTTP GET
запрос на сервер, работающий на localhost:8000
для пути /home/logic/quote/template/hummingbirds.gif
, Если сервер Django, он попытается найти правило, соответствующее /home/logic/quote/template/hummingbirds.gif
в вашем urls.py
. Вы не можете обратиться к файлу в вашей файловой системе, просто передав локальный путь.
Если вы хотите обслуживать статические файлы (например, изображения) с помощью Django (т. Е. В том же домене, на котором работает Django), вам необходимо настроить его так, чтобы он сначала обслуживал эти файлы следующим образом: http://docs.djangoproject.com/en/dev/howto/static-files/
Если вы хотите обратиться к файлу в вашей файловой системе (практика BAD и должна быть заменена, если вещь когда-либо выходит в сеть), вам нужно явно использовать протокол file://
. Абсолютные URL (т.е. без префикса протокола и имени домена) всегда будут обрабатываться как относящиеся к текущему протоколу и домену.