The Flask docs state:如何在Flask中的擴展名爲.jhtml的模板中啓用自動轉義?
autoescaping爲以.html,熱媒結束所有模板啓用,.XML以及.xhtml
如何啓用autoescaping爲與.jhtml擴展名結尾模板?
The Flask docs state:如何在Flask中的擴展名爲.jhtml的模板中啓用自動轉義?
autoescaping爲以.html,熱媒結束所有模板啓用,.XML以及.xhtml
如何啓用autoescaping爲與.jhtml擴展名結尾模板?
create_jinja_environment()方法感謝@Cagez's answer我能夠想出一個強大的(和推薦的)解決方案。
根據a post on the Flask mailing list,要做到這一點的方法是覆蓋flask.Flask.select_jinja_autoescape()
。在該職位的鏈接片段演示如何override which templates are autoescaped也不太工作,所以我想出了以下內容,這不工作:
class JHtmlEscapingFlask(Flask):
def select_jinja_autoescape(self, filename):
if filename is None:
return False
if filename.endswith('.jhtml'):
return True
return Flask.select_jinja_autoescape(self, filename)
app = JHtmlEscapingFlask(__name__)
我把這個在我的主要瓶的應用程序文件的頂部,更換通常app = Flask(__name__)
看起來您可以在創建應用時使用'autoescape'選項設置文件擴展名。看看在https://github.com/mitsuhiko/flask/blob/master/flask/app.pyhttps://github.com/mitsuhiko/flask/blob/master/flask/app.py
很酷,看起來不錯。 –
儘管我在這裏接受了我自己的答案,但我依靠@Cagez發佈的有用信息,所以如果您發現此問題和/或答案有用,請給他一個贊成票。 –