如何解决“UnboundLocalError:局部变量‘书’赋值之前引用”?

问题描述 投票:-1回答:1

我是新来的蟒蛇,目前试图从我的数据库中的数据显示到我的主页,但我得到了上面提到的错误。

我跑的Python 3.7。我试过设置“书”作为一个全局变量,但我最终有一个不同的名称错误[名称“书”没有定义。

    @app.route("/", methods=["GET", "POST"])
    def home():
        if request.form:
            book = Book(title=request.form.get("title"))
            db.session.add(book)
            db.session.commit()
            books = Book.query.all()
        return render_template("home.html", books=books)

我希望当用户加载主页,目前数据库中的所有书籍都显示在一个形式,而是我得到上述错误(S)。

python flask
1个回答
0
投票

你的代码更改为这

@app.route("/", methods=["GET", "POST"])
def home():
    books = {}
    if request.form:
        book = Book(title=request.form.get("title"))
        db.session.add(book)
        db.session.commit()
        books = Book.query.all()
    return render_template("home.html", books=books)

让我知道发生了什么

© www.soinside.com 2019 - 2024. All rights reserved.