gpt4 book ai didi

mongodb - For 循环在 Jinja/Flask 中不起作用

转载 作者:行者123 更新时间:2023-12-02 06:38:26 26 4
gpt4 key购买 nike

在 jinja 模板中,我的代码是这样的,我正在尝试从我的 MongoDB 数据库获取值

{% for a in output %}
{{ a.product_name }}
{% else %}
<p> No product found </p>
{% endfor %}
Some HTML CODE
{% for b in output %}
{{ b.product_name }}
{% endfor %}

问题是第一个循环工作正常,但第二个循环根本不工作。但是,当我在第一个循环之前编写第二个循环时,第二个循环起作用,但第一个循环不起作用(它进入 else 并打印“未找到产品”)。

我无法理解这个问题。

最佳答案

您想要迭代 mongodb 游标两次。因此,在第一次迭代之后,您需要在两个循环之间的某个位置调用 output(光标)上的 rewind 方法。

output.rewind()

我不确定您是否能够在 Jinja 模板本身中执行此操作。

所以更好的选择是将 pymongo 游标对象转换为列表本身,这样您就可以迭代多次。

output_as_list = list(output) 

现在您应该能够按照您期望的方式在代码中使用 output_as_list

关于mongodb - For 循环在 Jinja/Flask 中不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34877236/

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