Путь Django к javascript не работает

Я пробовал все виды вещей и не могу понять это!

По какой-то причине на сервере разработки Django пути к JavaScript просто не работают.

Структура каталогов

             site
               |
 appName    static      templates
    |          |            |
 views.py  javascript    appName
               |            |
            script.js     index.html

В index.html у меня есть

<script type="text/javascript" src=../../static/javascript/script.js></script>

И это не работает!

Если я скопирую и вставлю script.js непосредственно в index.html, все функции будут работать, только пути перепутаются.


person DevDevDev    schedule 26.08.2009    source источник
comment
По какому URL-адресу находится ваш index.html? yourhost/index.html? Вы используете Апач? Указывает ли DocumentRoot для этого хоста на site? Какие значения установлены в ваших переменных настроек MEDIA_ROOT и MEDIA_URL?   -  person James Wheare    schedule 26.08.2009


Ответы (3)


Как насчет:

src="/static/javascript/..."

Вы видите, что он загружается на вкладке сети Firebug?

person meder omuraliev    schedule 26.08.2009
comment
Также, когда я раскрываю вкладку javascript для загруженного документа, я получаю ошибку Django, заменяя DEBUG, чтобы получить 404 вещь. - person DevDevDev; 26.08.2009
comment
работают ли какие-либо из ваших медиа-ресурсов (css, js)? Каждый запрос по умолчанию направляется на контроллер django, если вы явно не укажете какой-либо тип медиа-каталога и не скажете ему не идти туда. docs.djangoproject.com/en/dev/howto/static-files - person meder omuraliev; 26.08.2009

Django по умолчанию не обслуживает статические ресурсы. Это можно сделать только в среде разработки - см. документацию.

person Daniel Roseman    schedule 26.08.2009

Каковы ваши значения MEDIA в settings.py? У меня есть следующее, и они отлично работают на сервере разработки:

#settings.py
MEDIA_ROOT = 'C:/site/static'
MEDIA_URL = ''

Структура проекта:

C:/site/
    settings.py
    static/
        javascript/
            script.js
    templates/
    urls.py

В любом из ваших шаблонов:

<script type="text/javascript" src="/static/javascript/script.js"></script> 
person Thierry Lam    schedule 27.08.2009