Как определить в моем шаблоне django статический файл (dajax.core.js)? - PullRequest
0 голосов
/ 08 октября 2011

Я пытаюсь использовать Dajax в своем приложении Django, но у меня появляется ошибка 404, когда я пытаюсь включить ее в свой HTML-шаблон.Я установил Dajax и Dajaxice на Windows 7. Вот как выглядит мой STATIC_URL:

STATIC_URL = '/static/'

Моя статическая папка находится в папке моего приложения, поэтому из папки src в моем проекте Eclipse, статическаяпуть к папке:

appname/static

Я поместил следующие файлы javascript в каталог 'js' в моем статическом каталоге:

dajaxice.core.js
jquery.dajax.core.js

В теге head в моем шаблоне находится мойтег script, который выглядит следующим образом:

<script src="{{ STATIC_URL }}js/jquery.dajax.core.js" type="text/javascript" charset="UTF-8"></script>

Однако, когда я открываю свой шаблон, я получаю следующую ошибку:

GET http://localhost:8000/dajax/js/jquery.dajax.core.js 404 (NOT FOUND)

Почему jquery.dajax.core.js не используетсянайденный?Спасибо за вашу помощь!

РЕДАКТИРОВАТЬ Кроме того, вот как выглядит мой взгляд:

from django.shortcuts import render_to_response
from django.template import RequestContext

def dajax(request):
    return render_to_response('dajax.html', context_instance=RequestContext(request))

Это очень просто, потому что я просто проверяю вещи.

1 Ответ

0 голосов
/ 09 октября 2011

Я бы предположил, что это потому, что вам нужно добавить статический сервер для django (который используется только для локального запуска)

добавьте это в свой urls.py:

if settings.DEBUG:
    urlpatterns += patterns('',
        (r'^static/(.*)$', 'django.views.static.serve', {'document_root': settings.STATIC_PATH}),
    )

или вам нужно указать MEDIA_ROOT абсолютный путь к вашей статической папке.

в противном случае, я думаю, вы объявляете свой STATIC_URL дважды в своих настройках, потому что вы говорите, что установили его на /static/, но затем шаблон, кажется, заменяет его на dajax

т.е. GET <a href="http://localhost:8000/dajax/js/jquery.dajax.core.js" rel="nofollow">http://localhost:8000/dajax/js/jquery.dajax.core.js</a> 404 (NOT FOUND)

должно быть http://localhost:8000/static/js/jquery.dajax.core.js

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...