Уведомления

Группа в Telegram: @pythonsu

#1 Ноя. 5, 2010 20:50:55

diego
От:
Зарегистрирован: 2010-09-14
Сообщения: 78
Репутация: +  0  -
Профиль   Отправить e-mail  

подключение jquery

Доброго времени суток.

шаблон

<html>
<head>
<script type="text/javascript" language="JavaScript"
src="jquery-1.2.3.min.js"></script>
<script type="text/javascript" language="JavaScript">
$(document).ready(function(){
alert("Hello world!");
})
</script>
<title>Live Update</title>
<style type="text/css">
body {
margin: 30px;
font-family: sans-serif;
background: #fff;
}
h1 { background: #ccf; padding: 20px;}
div.update { width: 100%; padding: 5px; }
div.even { background: #ddd;}
div.timestamp { float: left; font-weight: bold;}
div.text {float:left; padding-left: 10px;}
div.clear { clear: both; height: 1px;}
</style>
</head>
<body>
<h1>Welcome to the Live Update!</h1>
<p>This site will automatically refresh itself every minute with new
content - please <b>do not</b> reload the page!</p>

{% if object_list %}
<div id="update-holder">
{% for object in object_list %}
<div class="update {% cycle even,odd %}" id="{{ object.id }}">
<div class="timestamp">
{{ object.timestamp|date:"Y-m-d H:i:s"}}
</div>
<div class="text">
{{ object.text|linebreaksbr }}
</div>
<div class="clear"></div>
</div>
{% endfor %}
</div>
{% else %}
<p>No updates yet - please check back later!</p>
{% endif %}
</body>
</html>
jquery-1.2.3.min.js находится в папке с шаблоном

Но диалогового окна, которое должно быть изза строки
<script type="text/javascript" language="JavaScript">
$(document).ready(function(){
alert("Hello world!");
})
не наблюдается.
Может проблема в пути до библиотеки?
И как вообще его прописать для ОС Windows 7?



Офлайн

#2 Ноя. 5, 2010 21:05:48

fth
От:
Зарегистрирован: 2010-07-26
Сообщения: 105
Репутация: +  0  -
Профиль   Отправить e-mail  

подключение jquery

А какое отношение шаблон имеет отношение к подключению jquery?
Если картинку положить в папку с шаблоном, то как ни странно она тоже не будет отображаться на странице.
В общем, библиотека - это статичный контент, и работать с ним нужно соответственно.



Офлайн

#3 Ноя. 8, 2010 13:31:10

jingvar
От:
Зарегистрирован: 2010-03-24
Сообщения: 35
Репутация: +  0  -
Профиль   Отправить e-mail  

подключение jquery

Тут добрые люди снесли мой топик на тему простейших операций с jquery.

1. Ты должен был увидеть в логах что-то вида

 [01/Nov/2010 15:09:08] "GET / HTTP/jquery-1.2.3.min.js" 500 70298
Т.е. ты загрузи основную страницу, она пытается загрузить jquery-1.2.3.min.js c корня сайта.
Как обрабатывать данный запрос в ursl.py и views.py ты не написал. Соответственно жаба не загрузилась и алерт не сработал.

2. Решение: либо ручками прописываешь урл и процедуру до конкретного jquery-1.2.3.min.js либо как сделал я:
все скрипты лежат с /scripts/
urls.py
urlpatterns += patterns(
(r'^scripts/([^/]+)$','scripts'),
)
views.py
def scripts(request, name):
data = open(os.path.join('scripts',name), 'rb').read()

return HttpResponse(data)
Это обеспечит загрузку любого файла из каталога scripts по адресу /scripts/. Т.е
<script src="/scripts/jquery-1.4.3.min.js"></script>



Офлайн

#4 Ноя. 8, 2010 13:37:50

Doberman26rus
От: Ставрополь
Зарегистрирован: 2009-03-16
Сообщения: 128
Репутация: +  1  -
Профиль   Отправить e-mail  

подключение jquery

o_0 Фига се. Это что…. это для чего…. Ушёл в себя.



подпись

Офлайн

#5 Ноя. 9, 2010 11:33:44

diego
От:
Зарегистрирован: 2010-09-14
Сообщения: 78
Репутация: +  0  -
Профиль   Отправить e-mail  

подключение jquery

jingvar
Тут добрые люди снесли мой топик на тему простейших операций с jquery.

1. Ты должен был увидеть в логах что-то вида
 [01/Nov/2010 15:09:08] "GET / HTTP/jquery-1.2.3.min.js" 500 70298
Т.е. ты загрузи основную страницу, она пытается загрузить jquery-1.2.3.min.js c корня сайта.
Как обрабатывать данный запрос в ursl.py и views.py ты не написал. Соответственно жаба не загрузилась и алерт не сработал.

2. Решение: либо ручками прописываешь урл и процедуру до конкретного jquery-1.2.3.min.js либо как сделал я:
все скрипты лежат с /scripts/
urls.py
urlpatterns += patterns(
(r'^scripts/([^/]+)$','scripts'),
)
views.py
def scripts(request, name):
data = open(os.path.join('scripts',name), 'rb').read()

return HttpResponse(data)
Это обеспечит загрузку любого файла из каталога scripts по адресу /scripts/. Т.е
<script src="/scripts/jquery-1.4.3.min.js"></script>
Спасибо за ответ. Буду иметь ввиду.

Сделал так

urls.py
url(r'^media/(?P<path>.*)', 'django.views.static.serve',
{'document_root':settings.MEDIA_ROOT,'show_indexes': True}),
httpd.conf
Alias /media "C:\\test\\src\\liveproject\\liveupdate\\media\\"
<Location /media >
allow from all
</Location>
settings.py
MEDIA_ROOT = 'c:/test/src/liveproject/liveupdate/media'



Офлайн

#6 Ноя. 9, 2010 12:57:03

Doberman26rus
От: Ставрополь
Зарегистрирован: 2009-03-16
Сообщения: 128
Репутация: +  1  -
Профиль   Отправить e-mail  

подключение jquery

url(r'^media/(?P<path>.*)', 'django.views.static.serve',
{'document_root':settings.MEDIA_ROOT,'show_indexes': True}),
Это делается для стандартного дебагерского веб сервера django. если ты используешь Lighthttpd, то этого делать не надо. Достаточно этого:
Alias /media "C:\\test\\src\\liveproject\\liveupdate\\media\\"
<Location /media >
allow from all
</Location>
В идеале надо делать примерно так:
if settings.DEBUG:
urlpatterns += patterns('',
(r'^media/(?P<path>.*)$', 'django.views.static.serve', {'document_root': settings.MEDIA_ROOT}),
)
Читайте доки.



подпись

Офлайн

#7 Ноя. 9, 2010 18:50:18

jingvar
От:
Зарегистрирован: 2010-03-24
Сообщения: 35
Репутация: +  0  -
Профиль   Отправить e-mail  

подключение jquery

Может быть это тема для отдельного топика, спрошу пока тут.
Как правильно размещать контент в проекте и приложении в расчете на переход к боевому серверу?

Я предполагаю, что статические файлы обычно делят на несколько категорий:
а) java script ~/scripts
б) картинки, музыка, флеш ~/media контент для рендеринга страничек
в) файлы с статичным контентом - ? для загрузки клиентом

А то в доках обычно ляля на тему как гибко мы можем все рассовать и как здорово что у нас питон.



Офлайн

#8 Ноя. 10, 2010 17:22:29

sonniy
От:
Зарегистрирован: 2009-12-18
Сообщения: 84
Репутация: +  0  -
Профиль   Отправить e-mail  

подключение jquery

–media
|—-css
|—-js
|—-uploads
|—-*и в таком духе*



Офлайн

Board footer

Модераторировать

Powered by DjangoBB

Lo-Fi Version