gpt4 book ai didi

python - 在 flask 模板中访问这些字典值

转载 作者:行者123 更新时间:2023-12-05 02:19:48 25 4
gpt4 key购买 nike

我的模板正在输出以下内容。它不会提取任何查询值,但页面加载正常并且不会失败,但它不会显示任何

我在 mysqlmonitor 中仔细检查了 query,它应该提取 3 条记录。

 <li><a href="http://blog.mysite.com/wordpress///"></a></li>

templates/index.html 我有:

    {% for blogpost in blogposts %}
<li><a href="http://blog.mysite.com/wordpress/{{blogpost[2]}}/{{blogpost[3]}}/{{blogpost[1]}}">{{blogpost[0]}}</a></li>
{% else %}
<li>no blog posts right now...</li>
{% endfor %}

app.py 有这个:

import pymysql.cursors
app = Flask(__name__)
connection = pymysql.connect(host='localhost', user='myuser', port=3306, password='mypass', db='mydb', charset='utf8mb4', cursorclass=pymysql.cursors.DictCursor)

@app.route('/', methods=('GET', 'POST'))
def email():
form = EmailForm()

curs = connection.cursor()

curs.execute("SELECT post_title, post_name, YEAR(post_date) as YEAR, MONTH(post_date) as MONTH FROM mydb.wp_posts WHERE post_status='publish' ORDER BY RAND() LIMIT 3")


blogposts = curs.fetchall()
if request.method == 'POST':
return render_template('index.html', form=form, blogposts=blogposts)
if __name__ == '__main__':
app.run()

UPDATE 我认为我的 for() 工作不正常,因为当我在 template 中更新时,我得到的所有数据如下:

 [{u'MONTH': 12, u'YEAR': 2016, u'post_name': u'data is here', u'post_title': u'data is here'}, 
{u'MONTH': 12, u'YEAR': 2016, u'post_name': u'data is here', u'post_title': u"data is here"}]

如何在我的 flask template 中访问这些数据?

非常感谢!

最佳答案

尝试找出发送到模板的内容。将 print(blogposts) 添加到电子邮件功能 - 就在 if request.method == 'POST': 行下面,看看它给你什么信息。

如果 blogposts 是一个字典列表,那么您不能通过数字访问它们。您需要使用 key 的名称。例如,您需要将 blogpost[0] 更改为 blogpost['name']。使用 Flask 的模板,您还可以使用点符号,因此博客文章名称将变为 blogpost.name

关于python - 在 flask 模板中访问这些字典值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41429604/

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