>  Q&A  >  본문

Jinja 템플릿/Flask를 사용하여 굵은 수정으로 중첩된 HTML 단락 렌더링 구현

문장에서 단어를 제거한 다음 제거된 단어를 사전 API 검색에서 얻은 다른 단어로 바꾸는 함수를 만들고 싶습니다.

매우 간단합니다. 문장의 단어가 제거된 단어 목록에 속하는지 확인하고, 그렇다면 대체 단어로 바꾸고, 그렇지 않은 경우 원래 단어를 새 문자열에 추가하는 기능입니다. 문제 없습니다.

F-문자열을 사용하고 HTML 태그로 해석될 텍스트 수정자를 추가하는 경우 도움이 필요한데 이것이 올바른 방법입니까? 대체된 텍스트를 굵게 표시하고 싶습니다

으아악

브라우저에서 HTML 마크업을 검사하면 새 문자열이 포함된 단락 요소가 다음과 같이 올바르게 컴파일됩니다. 으아악

그러나 문제는 <b>가 최종 마크업에 암시되어 있지만 렌더링되지 않는다는 것입니다. 여기서 뭔가 빠졌나요?

렌더링 과정에서 단락이 호출되는 Flask 템플릿 태그는 다음과 같으며, 질문[0]이 포함된 <p>는 제가 논의한 새로운 렌더링 문자열 값입니다.

으아악

도와주셔서 감사합니다!

P粉170438285P粉170438285210일 전628

모든 응답(1)나는 대답할 것이다

  • P粉087074897

    P粉0870748972024-03-23 09:57:34

    기본적으로 Jinga는 >, <({{question[0]}} 사용 시)와 같은 변수의 문자를 자동으로 이스케이프합니다.

    질문[0]이 구성되는 방식에 자신이 있다면 이를 <p id="question">{{question[0]}}</p>改为<p id="question">{{question[0] | safe }}</p>로 대체하여 이 자동 이스케이프를 우회할 수 있습니다.

    자세한 내용은 다음을 참조하세요. https://jinja.palletsprojects.com/en/3.0.x/templates/#html-escaping

    회신하다
    0
  • 취소회신하다