在Jinja模板中用逗号分隔列表值

0 投票
1 回答
4060 浏览
提问于 2025-04-18 09:26

我正在使用一个循环来创建一个像 [1, 2, 3] 这样的列表。下面是我的 Jinja 模板,它生成了一些 JavaScript 代码:

xAxis: {
                categories: {
                    [
                    {% for data in records['result'] %}
                        {{ data['_id']['day'] }},
                    {% endfor %}
                ]
            },

这个代码运行得很好,得到了我想要的结果,但我的开发工具(PyCharm)却提示最后的逗号是多余的(其实并不是多余的):[1,2,3,] 而不是 [1,2,3]

有没有更好的方法在最后加上逗号(比如先转换成字符串,然后在最后拼接逗号)?或者,我应该忽略这个警告吗?

1 个回答

2

如果你在使用Jinja(看起来是这样),你可以直接使用这个join过滤器

xAxis: {
            categories: {
                [{{ records['result']|join(', ', attribute='_id.day') }}]
        },

attribute的写法可以通过用点号来获取子键,根据源代码的说明。

撰写回答