Flask基于元组列表呈现select



我有一个数据,看起来像这样,我从flask render_template

一个名为product_list

的元组列表
[(22, '1', 'false'), (94, '2', 'true'), (95, '3', 'false'), (100, '4', 'false'), (101, '5', 'false'), (102, '6', 'false'), (103, '7', 'false'), (104, '8', 'false'), (105, '9', 'false'), (106, '10', 'false'), (120, '11', 'false'), (121, '12', 'false')]

基本上

元组中的第一项是"product_id"第二项是"product_version"第三项是"is_product_active">

我试图渲染这些元组在一个select标签上我的html。

列表的顺序是这样的,列表中的第一项应该是下拉菜单中的selected,所以我尝试了这个

<select size="2" data-width="fit" style="line-height:2px">
<option value="{{product_list[0][0]}}" selected >Version: {{product_list[0][1]}}</option>
{% for product in product_list|slice:"1:" %}
<option value="{{product[0]}}">Version {{product[1]}}</option>
{% endfor %}
</select>

这个不工作,flask jinja抛出错误说jinja2.exceptions.TemplateSyntaxError: expected token 'end of statement block', got 'string'

主要来自product_list|slice:"1:"

我基本上将数组的第一项设置为选中,然后我试图跳过数组中的第一项,并简单地在下拉列表中添加其他项。

有什么更简洁的方法可以帮助提高html代码的可读性呢?

可以使用括号表示法。

{% for product in product_list[1:] %}

相关内容

  • 没有找到相关文章

最新更新