簡體   English   中英

如何在Flask中從另一個視圖調用視圖

[英]How to call a view from another in Flask

因此,SignUp 1函數連接到html文件,該部分很好,用戶可以提交表單。 但是,一旦此表單通過驗證,我想調用SignUp2()函數,該函數應將另一個HTML文件與表單連接。 但是,一旦用戶提交了表單(在SignUp1函數中),我將收到一個錯誤消息: werkzeug.routing.BuildError:無法為端點“ SignUp2”構建URL。

請您告訴我如何從SignUp 1函數調用SignUp2函數。 謝謝。

@app.route('/', methods=["GET", "POST"])
def SignUp1():
    form = UserForm()
    SchoolCode = None
    FirstName = None
    Postcode = None
    Phone = None
    ConfirmEmail = None
    Password = None
    AddLineOne = None
    AddLineTwo = None
    if form.validate_on_submit():
        first_name = form.FirstName.data
        last_name = form.LastName.data
        postcode = form.Postcode.data
        phone = form.Phone.data
        email = form.Email.data
        password = form.Password.data
        add_one = form.AddLineOne.data
        add_two = form.AddLineTwo.data
        user_id = AddUser(first_name, last_name, postcode,     phone, email, password, add_one, add_two)
        Parent_id = user_id
        SignUp2(Parent_id)
    return render_template('SignUp.html', form=form)


def SignUp2(Parent_id):
    form = Child1Form()
    c1_FirstName = None
    c1_LastName = None
    c1_Year = None
    return render_template('ChildSignUp.html', form=form)

您還需要給SignUp2一個路由,然后應該重定向,而不是嘗試直接調用它。

(請注意,所有對None的賦值都是毫無意義的,您不會在任何地方使用任何這些變量。)

@app.route('/', methods=["GET", "POST"])
def SignUp1():
    form = UserForm()
    ...
    if form.validate_on_submit():
       ...
        return redirect(url_for('SignUp2', Parent_id=Parent_id))
    ...

@app.route('/signup2', methods=["GET", "POST"])
def SignUp2(Parent_id):
    ...

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM