在单独的 html 页面上显示数据库中的数据

Display data from database on a separate html page

我不确定这个问题以前有没有人回答过,我试图找到其他答案,但没有成功,可能是我没有把正确的搜索。

我正在尝试完成 CS50 Web Finance 项目,但我 运行 与投资组合页面的开头撞墙了。更具体地说,我无法从我的 python 页面上的 finance.db 中提取数据,然后将其显示在我的 portfolio.html 页面上。我认为我已经成功地从我的 finance.db 中提取了用户名,如下面的代码所示。

@app.route("/")
@login_required
def index():
    """Show portfolio of stocks"""
     # look up the current user
    user = db.execute("SELECT username FROM users WHERE id = :id", id=session["user_id"])


    return render_template("portfolio.html")

但是,无论我在 portfolio.html 中做什么我都无法理解所以说“你好[用户名]”只是一直说“你好未定义”

{% extends "layout.html" %}

{% block title %}
    Home
{% endblock %}

{% block main %}
  <p>Hello {{ [username] }}</p>
{% endblock %}

我敢肯定这是大多数人都能得到的东西,但我还是个新手,我就是不明白。我试图查找资源,但我唯一找到的是其他人的代码,我不想复制和粘贴,我想学习如何正确地做,所以任何帮助将不胜感激.非常感谢您。

在 flask 中,您只需要通过 render_template 将用户名信息 'pass' 到您的 portfolio.html 页面。

所以,喜欢:

return render_template("portfolio.html", username=user)

然后在模板中显示:

  <p>Hello {{username}}</p>