1

この文字または文字が指定されたテキストに含まれている場合、文字または文字を強調表示するカスタムフィルターを作成してい<strong>ます。

これは私のカスタムフィルターです:

@register.filter(needs_autoescape=True)
def highlight(text, sterm, autoescape=None):
   if autoescape:
       esc = conditional_escape
   else:
       esc = lambda x: x
   result = text.replace(esc(sterm),'<strong>'+esc(sterm)+'</strong>')
   return mark_safe(result)

テンプレートでは、次のように{% load %}編集して使用しました。

{{search_result_text|highlight:searchterm}}

問題は、一致した用語の後に続くすべてのテキストを強調表示していることです。

ここに画像の説明を入力

ご覧のとおり、最初のブロックは現在起こっていることです。セカンドブロックを達成したい。探しましたlevel

コードの何が問題になっていますか?

編集:申し訳ありませんが、それは私のタイプミスです。適切に閉じませんでし<strong>たが、今では魔法のように機能しています! :)。他のユーザーが使用できるように、ここに残します。

4

1 に答える 1