"NameError: name 'redirect' is not defined"即使导入了重定向



我有一个简单的Flask 1.1.x应用程序:

from flask import Flask
from flask import redirect, render_template, url_for
app = Flask(__name__)

@app.route('/', methods=['GET'])
def index():
return render_template("index.html")

@app.route('/donate', methods=['GET'])
def donate():
return render_template("donate.html")
@app.route('/donations', methods=['GET'])
def donations():
return redirect(url_for('donate'))

if __name__ == '__main__':
app.run(host='localhost', port=8080, debug=True)

我正在本地服务器上进行开发。当我尝试在浏览器中访问/donations时,我收到一个内部服务器错误,本地服务器报告此错误:

ERROR in app: Exception on /donations [GET]
<trimmed>
return redirect(url_for('donate'))
NameError: name 'redirect' is not defined

我不明白为什么它报告redirect为未定义,因为我正在导入它,并且我以Flack Quickstart Guide的方式调用它。

您能用return redirect('/donate')替换return redirect(url_for('donate'))吗?

最新更新