Уведомления

Группа в Telegram: @pythonsu

#1 Июль 8, 2013 13:43:34

chaotism
От:
Зарегистрирован: 2010-11-29
Сообщения: 76
Репутация: +  1  -
Профиль   Отправить e-mail  

Настройка поиска

Возник квест на настройку системы поиска, поиск ведется с помощью ajaxa, тоесть в поле вбиваем текст ищем, результат получаем на той же странице.
“”“Поиск осуществляется:
сразу после изменения поля, но не ранее, чем через 300 мс после начала предыдущего поиска;
не ранее, чем закончится предыдущий поиск;”“”
вот тут возник вопрос у меня, паузу лучше со стороны django сделать с момента окончания поиска? И как уловить это время, про сигналы читал, но они же будут после выборки в базе данных, а не выдачи результата на страницу.



Офлайн

#2 Июль 8, 2013 13:51:25

chaotism
От:
Зарегистрирован: 2010-11-29
Сообщения: 76
Репутация: +  1  -
Профиль   Отправить e-mail  

Настройка поиска

сказали как делать js
“”“Если поиск запускался, ставил значение пременной.
Если приходил новый поиск ранее чем через 300 мс, то добавлял в очередь другой поиск и сигнала «через 300 - прошло время мс». Если по возвращению после сигнала поиск уже не идет, начинать новый. Если поиск идет, ставить галку на ожидание. Когда поиск заканчивается (отрабатывает функция в jquery в запросе get/post) сам же блок выдачи смотрит, что в очереди протух по времени новый поиск, выдает результаты поиска и начинает новые.”“”
А я уже, стал придумывать как через джанго это протолкнуть



Офлайн

#3 Июль 8, 2013 14:07:18

FishHook
От:
Зарегистрирован: 2011-01-08
Сообщения: 8312
Репутация: +  568  -
Профиль   Отправить e-mail  

Настройка поиска

>>>паузу лучше со стороны django
300 мс = 0.3 секунды, у тебя предыдущий поисковый запрос еще до сервера не дойдет



Офлайн

#4 Июль 10, 2013 07:08:43

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

Настройка поиска

FishHook
>>>паузу лучше со стороны django 300 мс = 0.3 секунды, у тебя предыдущий поисковый запрос еще до сервера не дойдет
Дойдет) У меня за это время поиск по 80 млн таблице осуществляется и ответ успевает отдать

Делай средствами js и флагами как ты выше описал



подпись

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version