Jinja2의보기 (또는 템플릿)에서 문자열을 "안전한"것으로 표시하는 방법은 무엇입니까?
-
13-09-2019 - |
문제
일반적으로 Jinja2에서 스트링 출력을 안전하게 표시하려면 다음과 같은 작업을 수행합니다.
{{ output_string|safe() }}
그러나 output_string이면 어떨까요? 언제나 안전한? 안전 필터를 사용하여 매번 반복하고 싶지 않습니다.
이메일로 출력을 위해 URL을 준비하는 "이메일 화"이라는 사용자 정의 필터가 있습니다. 앰퍼 샌드는 항상 탈출되는 것 같습니다. 내 사용자 지정 필터에 출력을 안전하게 표시하는 방법이 있습니까?
해결책
사용 마크 업 수업:
클래스 jinja2.markup ([String])
문자열은 탈출 할 필요없이 HTML/XML 출력에 포함하기에 안전하다고 표시합니다.
다른 팁
확인하다 Safestring, 예를 들어 :
from django.utils.safestring import SafeString
...
return context.update({
'html_string': SafeString(html_string),
})
제휴하지 않습니다 StackOverflow