我有一個功能,自動替換問題ID來鏈接:Flask + python + jinja2:我該如何部分地用html代碼替換模板參數?
def addlinks(text):
from flask import Markup
idlist = getallissueids()
for issueid in idlist:
text = text.replace(issueid, "<a href=/browse/" + issueid +">" + issueid + "</a>")
return Markup(text)
然後{{文本}}傳遞給模板。
它的工作原理,但有一個副作用 - 所有類型的HTML在此後的文本中未轉義。 有沒有什麼辦法可以避免html轉義只爲鏈接?
我已經更新了我的答案。基本思想是safe關鍵字關閉jinja2模板中html的自動轉義。 – AlexLordThorsen