gpt4 book ai didi

javascript - 如何将字典从 Jinja2(使用 Python)传递给 Javascript?

转载 作者:太空宇宙 更新时间:2023-11-03 14:26:18 25 4
gpt4 key购买 nike

如何将字典从 Jinja2(使用 Python)传递给 Javascript?我在 Python 中有字典,当我呈现模板时,我需要将该字典与 Javascript 一起使用,我从 Python 传递过来

template = JINJA_ENVIRONMENT.get_template('sm.html')
self.response.write(template.render(values=values))

但是如何将它们存储在 html 页面内的 Javascript 变量中。

最佳答案

使用json模块将Python数据转成JSON数据; JSON 是 JavaScript * 的一个子集,并且作为 JavaScript 字面量表现良好:

import json

js_value = json.dumps(python_value)

并在模板中渲染 js_value

如果您还需要 JSON 数据HTML 安全,您需要添加一些替换:

js_value = (json.dumps(python_value)
.replace(u'<', u'\\u003c')
.replace(u'>', u'\\u003e')
.replace(u'&', u'\\u0026')
.replace(u"'", u'\\u0027'))

*JSON 允许 U+2028 and U+2029 characters哪些 JavaScript 文字不能包含,但 json.dumps() 函数默认转义所有非 ASCII 代码点,因此只要您不禁用 ensure_ascii 就可以了.

关于javascript - 如何将字典从 Jinja2(使用 Python)传递给 Javascript?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19884900/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com