烧瓶重定向功能无法重定向到正确的页面

时间:2019-04-05 22:30:24

标签: python html redirect flask https

我有页面应用路线。这是我的python flask代码。


from flask import Flask, render_template, flash, redirect
from forms import RegistrationForm, LoginForm

app = Flask(__name__)


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


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


@app.route("/register", methods=["GET", "POST"])
def register():
    form = RegistrationForm()
    app.logger.debug(form.validate_on_submit())
    if form.validate_on_submit():
        return redirect("dashboard")

    return render_template("registerPage.html", title="Register", forms=form)

当我运行它时,它应该重定向到http://localhost:5000时重定向到http://localhost:5000/dashboard
发生什么事了?

1 个答案:

答案 0 :(得分:0)

url_for添加导入:

from flask import url_for

然后在重定向中使用它:

return redirect(url_for("dashboard"))

url_for函数使用一个函数的名称并构造该函数的“ URL”。

您在DropBox上发布了指向项目文件的链接。

在模板registerPage.html中,您需要更改:

 <form method="POST" action="/">

收件人:

 <form method="POST" action="/register">

如果您发布到/,则register函数将永远不会看到发布的数据,也永远不会将用户重定向到仪表板。