【发布时间】:2022-11-18 07:45:03
【问题描述】:
请注意,我已经阅读了 Jinja 文档,我已经在 stackOverflow 和 Google 搜索结果中搜索了很多答案。我还没有找到任何解决这个问题的方法。
--
场景:使用 python 从 sql dtatbase 调用变量,然后在 html 文件中传递给 jinja。
蟒蛇/SQL `
user_id = session["user_id"]
stocks = db.execute("SELECT * FROM current_holdings")
cash = db.execute("SELECT cash FROM users WHERE id = ?", user_id)
return render_template("portfolio.html", stocks=stocks, cash=cash)
`
问题部分的 jijna/html `
<tr>
<td col span = "4"></td>
<td col span = "4"></td>
<td col span = "4"></td>
<td id = "cash">Cash</td>
<td>{{cash}}</td>
</tr>
`
问题部分的输出
屏幕上显示的意外问题格式:[{'cash': 50000}] 例外:50000
相同的 Jijna 代码(诚然在 for 循环内)适用于同一 html 文档中的以下代码
`
{% for stock in stocks %}
<tr class="info_cells">
<td>{{ stock["symbol"]}}</td>
<td>{{ stock["name"]}}</td>
<td>{{ stock["quantity"]}}</td>
<td>{{ stock["price"]}}</td>
<td>{{ stock["total"]}}</td>
</tr>
{% endfor %}
` 此部分仅成功输出值。这两个部分都包含在
{% block main %}
SQL 注意事项:jinja 从两个不同的表中提取数据。这些表的格式相同,并且位于相同的工作区和 .db 文件中。其他格式为 NUMERIC 的值可以正确呈现。
关于 Jinja 符号的注意事项:dict.vr 和 dict["var"] 已尝试互换使用,但没有取得有益的成功。
--
场景:使用 python 从 sql dtatbase 调用变量,然后在 html 文件中传递给 jinja。 屏幕上显示的意外问题格式:[{'cash': 50000}] 例外:50000
同一 HTML 文件中的其他 Jinja 代码按预期运行
【问题讨论】:
-
从你的输出:
cash.0.cash。但最好是更正您的查询。 -
但最好是更正您的查询 - 详细说明。我遵循我从中学到的文档/课程的格式。所以如果你知道一些我不知道的东西,我要得到它的唯一方法就是把它拼出来。 “来自您的输出:cash.0.cash” - 感谢您的提示,这解决了问题。
-
你在你的代码中削减了太多,我无法就应该如何修复这个问题给出适当的建议。但是,从您的代码中尖叫出来的是,您正在获取用户列表,而您的查询应该返回一个用户。