【问题标题】:Display documents in a table from MongoDB with Jinja2 HTML使用 Jinja2 HTML 在 MongoDB 的表中显示文档
【发布时间】:2021-08-20 01:37:06
【问题描述】:

我目前试图弄清楚如何“一个接一个地”显示我的 MongoDB 集合中的多个文档。我最近获取数据的代码如下所示:

@app.route('/shops', methods=['GET', 'POST'])
@login_required
def certified_shops():
    shopdata = col.find({ "go": True})

    return render_template("tables.html", shopdata=shopdata)

我的 HTML Jinja 注入是这样的:

<tr>
<td>   
{% for data in shopdata: %}
 {{ data.url_name }}
{% endfor %}
</td>
</tr>

代码本身运行良好 - 但实际上所有 URL 都显示在一行中。

现在我找不到处理这个问题的好方法。 我只是试图用不同的循环或一些“范围内”来显示数据,但这到目前为止还没有奏效。我在这里或在 mongodb 和 jinja 的文档中找到的所有内容对我来说并不顺利。 我的 html 处理或 db 查询是否有一个简单的技巧来为每个 td/tr 轻松灵活地显示一个 url? 由于集合会增长,列表应该会在我的网络应用程序中自动扩展。

很想在这里提出一些想法,因为我已经绞尽脑汁好几天没有任何好的解决方案,而且我一直在想一定有一个简单的方法,我就是看不到它,因为它就是这么简单。

【问题讨论】:

    标签: python html mongodb flask jinja2


    【解决方案1】:

    我理解你的问题了吗?这将为每个 url_name 创建一个新行:

    {% for data in shopdata %}
      <tr>
        <td>   
          {{ data.url_name }}
        </td>
      </tr>
    {% endfor %}
    

    注意。 'shopdata' 之后的 jinja for 循环中没有使用冒号 (:)。

    【讨论】:

      猜你喜欢
      • 2013-07-25
      • 2016-06-05
      • 1970-01-01
      • 2017-01-10
      • 2023-03-19
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-01-04
      相关资源
      最近更新 更多