Уведомления

Группа в Telegram: @pythonsu

#1 Июль 21, 2011 18:15:35

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

Django. ajaxSubmit не обновляет слой

Всем привет еще раз. Обнаружилась еще одна проблема во время авторизации пользователя. Есть вот такой кусок когда в шаблоне

<div id="test">
{% if person.is_auth %}
<p>hi</p>
{% else %}
<p>bye</p>
{% endif %}
</div>
В самом скрипте главнй кусок тут
var options = {
....
target: '#test',
....
}
проблема в том, что куски это не обновляется.. Те. не обновляется кусок, где стоят куски от Django (начиная от if и до endif )
Проверял без этого - все нормально
Есть ли какие-то хитрые условия использования обновления с помощью jQuery куска шаблона с командами шаблонизатора Django?
P.S. Сразу хочу ответить на вопросы. Проверено без jQuery - все норм. Даже когда вхожу с jQuery и ничего не обновляется - нажимаю F5 и все нормально обновляется. А с jQuery никак ((



Отредактировано (Июль 21, 2011 18:17:26)

Офлайн

#2 Июль 22, 2011 10:04:34

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

Django. ajaxSubmit не обновляет слой

После кучи дебага и изучения отдачи и получения данных обнаружил такую прескорбную штуку..
не обновляется [% url main %}. Т.е. он так и остается {% url main %}, а не преобразовывается в http://localhost! Это происходит как раз в JS-скрипте. Как заставить преобразовывать шаблоны Django в JS?



Офлайн

#3 Июль 22, 2011 10:54:39

pill
От:
Зарегистрирован: 2010-08-27
Сообщения: 223
Репутация: +  0  -
Профиль   Отправить e-mail  

Django. ajaxSubmit не обновляет слой

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

ЗЫ: Вы ведь вызываете render_to_string перед отдачей шаблона?



Офлайн

#4 Июль 22, 2011 11:22:15

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

Django. ajaxSubmit не обновляет слой

Вы не поняли.. Первый пост - отрабатывает нормально когда нет jQuery
разберем на элементарном примере.
Я же просто дал имя url

url(r'^$', direct_to_template, {'template': 'index.html'}, name = 'main')
И просто делаю в js
window.location = '{% url main %}'
В результате вместо перенаправления на http://localhost перенаправляюсь по ссылке {% url main %} :)



Отредактировано (Июль 22, 2011 11:23:13)

Офлайн

#5 Июль 22, 2011 18:48:09

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

Django. ajaxSubmit не обновляет слой

Проблема решена костылями.
Собственно проблема почему-то в том, что js-скрипты у меня расположены в отделных файлах и подгружаются по мере надобности. В результате имею вышеописанную ошибку, когда добавляю еще и шаблоны в скрипты
Решение у меня простое в шаблоне (основном) создал глобальную переменную в js

var location = '{% url main %}';
И все заработало



Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version