gpt4 book ai didi

python - 为什么我的查询变成 bool 值,如何防止这种情况发生,以便我可以迭代它?

转载 作者:行者123 更新时间:2023-11-29 09:42:12 24 4
gpt4 key购买 nike

我在模板中创建了一个链接,该链接指向一个路由,该路由应该呈现一个页面,允许用户查看登录人员的姓名以及他们曾经发布的所有帖子。我进行了必要的查询,但它告诉我 TypeError:

Bool is not iterable.

我尝试将变量转换为字符串,但它没有显示我需要的信息。实际上,我需要访问整个表格,以便可以自定义模板上显示的内容。特别是,我需要一个 for 循环来遍历表中的所有条目并按我指定的列列出每个条目。

这是路线:

@app.route('/users/<id>/view')
def view_user(id):
mysql = connectToMySQL('quotes_dash2')
query = 'SELECT * FROM quotes WHERE user_id = %(q_id);'
data = {
"q_id": id
}
userQuotes = mysql.query_db(query, data)

mysql2 = connectToMySQL('quotes_dash2')
query2 = "SELECT * FROM users WHERE id = %(us_id);"
data2 = {
"us_id": session['userid']
}
our_user = mysql2.query_db(query2, data2)

return render_template('view.html', userQuotes = userQuotes, ourUser = our_user)

这是我尝试创建的模板(裸 html):

<h1>{{ourUser['first_name']}} {{ourUser['last_name']}}'s Quotes</h1>


<ul>
{% for quote in userQuotes %}
<li>
{{ quote['author'] }}: {{ quote['quote_content'] }}
<hr>
</li>

{% endfor %}
</ul>

我希望当我点击用户的名字(从另一个页面)时,它会将我带到一个 View 页面,该页面的顶部有用户的名字,以及用户发布的所有帖子(他们'重新引用作者的话)。我得到的是:

TypeError: 'bool' object is not iterable

回溯的重点是:

return render_template('view.html', userQuotes = userQuotes, ourUser = our_user)

{% for quote in userQuotes %}

我知道 userQuotes 是一个 bool,但我并不打算让它成为那样,而且我不知道如何更改它,以便我可以迭代 userQuotes 表示的表。

任何帮助将不胜感激!

最佳答案

我发现了问题所在。现在正在工作。万一其他人遇到这个问题并且很好奇,问题是我不小心忘记在查询的末尾括号后输入字母“s”。因此,它应该是 %(us_id)s 而不是 %(us_id)。

关于python - 为什么我的查询变成 bool 值,如何防止这种情况发生,以便我可以迭代它?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56403744/

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