2017-09-24 129 views
-1

我是燒瓶和python的新手,我試圖使用渲染模板函數打開一個URL。 404錯誤不斷顯示,而不是模板文件夾中的HTML。Python - 使用燒瓶渲染模板時出現404錯誤

我的文件夾結構如下:

coding folder/ 

main.py 

templates/ 

----profile.html 

我main.py文件中的代碼如下:

from flask import Flask, render_template 

app = Flask(__name__) 

@app.route("/profile/<name>") 

def profile(name): 

    return render_template("profile.html", name=name) 


if __name__ == "__main__": 

    app.run() 

我profile.html文件包含以下代碼:

<!doctype html> 

<title>sambit's page</title> 

<h3>Wassup {{ name }} </h3> 

我一直在撓撓我的頭超過4個小時。請幫忙!!!!

+1

你能說,在404狀態代碼中shell中顯示的是什麼請求嗎? –

回答

4

您是否試圖使用/profile/myname//profile/myname訪問?

由於您的路線定義沒有尾部斜線,因此如果您在瀏覽器中使用尾部斜線訪問該路線,Flask將拋出404。在這裏閱讀更多:Doc

雖然它們看起來很相似,但它們在URL定義中使用的尾部斜線有所不同。在第一種情況下,項目端點的規範URL具有尾部斜線。從這個意義上說,它與文件系統上的文件夾類似。不使用尾部斜線訪問它將導致Flask重定向到規範URL並以斜線結尾。 然而,在第二種情況下,URL被定義爲沒有結尾的斜線,而非像類UNIX系統上的文件的路徑名。訪問帶有斜槓的URL會產生404「未找到」錯誤。

+1

我明白了,非常感謝@Sreenadh!在我從URL中刪除斜線後,它現在工作正常。 – sambit

+0

@sambit沒問題。樂意效勞 :) –