在引号之间使用 jinja2/使用 jinja2 设置内联样式

Using jinja2 between quotation marks / setting inline styles with jinja2

我正在使用 Flask,我想要一个模板来呈现一组项目。

到目前为止一切正常,但项目有颜色 属性,我想将其设置为背景色。

我认为我可以简单地为我在 jinja-loop 中呈现的每个元素使用内联样式,但如果在字符串中工作,我找不到解决方案:

{%for i in items%}
    <div class="square-button" style="background: '{{ i.color if i.color is not none else '#000' }}';" onclick="itemClicked(this)" index="{{ loop.index }}"> ... </div>
{%endfor%} 

有没有办法做到这一点?

提前致谢!

编辑:

我让它可以通过以下改编工作:

<div ... style="{{ 'background: ' + data[i][k] if data[i][k] is not none else '#000' + ';' }}">...</div>

遗憾的是,这在 HTML 中被标记为错误。 我想它并不是真的要那样使用它,如果有一个干净的解决方案,请赐教! :)

试试这个

{%for i in items %}
    <div class="square-button" {% if i.color %} style="background:{{ i.color}};" {% else %} style="background: #000;" {% endif %} onclick="itemClicked(this)" index="{{ loop.index }}"> ... </div>
{%endfor%}