Я работаю над проектом поисковой системы. В котором пользователь будет искать запрос, и я покажу результат в пользовательском интерфейсе. Я использую Python для вычисления наилучшего результата поиска и колбу для визуализации результата в пользовательском интерфейсе. Я возвращаю объект JSON (словарь) в пользовательский интерфейс, который содержит идентификатор документа и его текст. Отображение текста в пользовательском интерфейсе просто и уже сделано, но теперь я хочу выделить ключевые слова в тексте документа. Я помещаю ключевое слово перед отправкой объекта словаря в пользовательский интерфейс.
Я использовал функцию разметки перед добавлением текста в объект JSON, но она не работала.
def getSearchQuery():
resultSet = callSearch(request.form['query'])
return render_template('index.html', result=resultSet)
def callSearch(searchQuery):
resultData = {'doc1':'Sample <span style="background:yellow;">data</span> from doc1'}
return resultData
index.html
{% for docId in result.keys() %}
<p>{{docId}}{{reslut[docId]}}</p>
{% endfor %}
Я пробовал функцию разметки:
from flask import Markup
def callSearch(searchQuery):
resultData = {'doc1':Markup('Sample <span style="background:yellow;">data</span> from doc1')}
return resultData
Это тоже не сработало.
В интерфейсе пользователя необходимо выделить ключевое слово вместо обычноготекст. Например, в моем случае данные будут выделены в тексте: Пример данных из doc1