2017-11-10 73 views
0

我想在sida2中創建一個按鈕,然後將我帶到resultat並從輸入表單中發佈名爲MJ的信息,但出現錯誤404請求的URL未找到服務器,我不明白爲什麼。這是HTML的一部分:404找不到「請求的URL未找到」

<form action="/sida2/resultat.html" method="POST"> 
<input title="" placeholder="MJ/kq foder" type="text" name="MJ" required> 
<br> 
<button type="submit">Submit</button> 
</form> 

這是蟒蛇部分:

from flask import Flask, render_template, request 

app=Flask(__name__) 

@app.route('/') 
def home(): 
    return(render_template("hemsida.html")) 


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


@app.route('/sida2/resultat', methods=['POST']) 
def resultat():  
    if request.method=='POST':  
     mj= request.form["MJ"] 



    return(render_template("resultat.html")) 

if __name__ =="__main__": 
    app.run(debug=True) 

我認爲這件事情很明顯,我失蹤,但我似乎無法找到它。

+2

看起來你的表單看起來像'action'應該會碰到'/ sida1/resultat'端點,而不是'.html'文件。 –

回答

2

使用url_for來生成Flask視圖的URL。您要的視圖是resultat

<form action="{{ url_for('resultat') }}" method="POST"> 

,這將產生相應的URL爲您resultat()功能:爲你的代碼綁定到URL /sida2/resultat代替

@app.route('/sida2/resultat', methods=['POST']) 
def resultat(): 

你目前在你的表單操作(/sida2/resultat.html)的URL將無法正常工作。

有關爲什麼您應該使用url_for對網址進行硬編碼的好處的簡要概述,請查看the Flask quickstart section on the topic

相關問題