Уведомления

Группа в Telegram: @pythonsu

#1 Март 5, 2009 11:49:47

romankrv
От:
Зарегистрирован: 2008-05-23
Сообщения: 513
Репутация: +  0  -
Профиль   Отправить e-mail  

подсветка поискового запроса

Здравствуйте.

У меня сл. вопрос:

Какие (какой) способ есть для сл. случая:
В базе хранится текст в поле TextField. Для этого поля осуществляется поиск по словам.
Для этого я подготовил Queryset, в элементах которого в поле TextField есть эти поисковые слова.

Теперь вопрос собственно о способе подсветки поискового выражения при выводе в браузер этого поля TextField? То есть каким способом осуществлять подстановку нтмл тэгов, чтобы в браузере делалась подсветка данного слова). Например в текстовом поле(поле базы данных) содержится текст: “телефон 12345” поисковое слово “телефон”. Тогда вывод в браузере должен быть как: "телефон 12345".

Спасибо.

Офлайн

#2 Март 5, 2009 12:59:56

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

подсветка поискового запроса

А свои соображения не скажешь?

Офлайн

#3 Март 5, 2009 13:15:05

romankrv
От:
Зарегистрирован: 2008-05-23
Сообщения: 513
Репутация: +  0  -
Профиль   Отправить e-mail  

подсветка поискового запроса

Ferroman
А свои соображения не скажешь?
Я предполагаю, что есть два пути:
1) на стороне сервера:
1.1 разбирать текст: Это найти поисковое слово в контексте – найти позицию символа предшествующею этому слову – вставить туда начальный тег – потом с конечным тегом тоже самое
1.2 какие то готовые решения (пока незнаю какие)

2) на стороне клиента: js или каким нибудь его фремворком (возможно есть что то для этого в арсенале у jquery)

Но я спрашиваю — возможно есть способы лучше этих, так сказать более правильные? т.к. с п.1.1 много кода будет. п.2 - не хотелось на клиента ложить функционал подсветки.

Вот мои мысли по этому поводу. Что можете сказать или подсказать?

Отредактировано (Март 5, 2009 13:16:17)

Офлайн

#4 Март 5, 2009 15:24:02

romankrv
От:
Зарегистрирован: 2008-05-23
Сообщения: 513
Репутация: +  0  -
Профиль   Отправить e-mail  

подсветка поискового запроса

За JS решение спасибо.
Также был бы интересен вариант на стороне сервера.

Офлайн

#5 Март 5, 2009 18:07:25

Ferroman
От:
Зарегистрирован: 2006-11-16
Сообщения: 2759
Репутация: +  1  -
Профиль   Отправить e-mail  

подсветка поискового запроса

Я бы сделал так - написал/взял/доделал кастом фильтр для тегов, который подсвечивал бы нужное слово (брал в нужный тег).
Передавал бы это слово, если вьюву передан параметр highlight с нужным словом/словосочитанием.

Отредактировано (Март 5, 2009 18:08:52)

Офлайн

Board footer

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

Powered by DjangoBB

Lo-Fi Version