[英]Flask render_template is returning a string instead of HTML document
我有這個功能:
def run():
if request.method == 'POST':
print(request.form['id_num'])
# fix later
else:
return render_template("apprun.html")
現在它總是指向 else 語句,但是 render_template 函數不能正常工作。 我得到的不是一個完全格式化的 HTML 頁面,而是一個字符串。 具體來說,我的網頁顯示的是 html,而不是讀取 html 並正確顯示:
<!DOCTYPE html>
<html>
<head>
<title>Rips Lab</title>
</head>
<body>
<style type="text/css">
html {
background-color: #E4E0EE;
}
body {
font-family: "Helvetica","Arial";
font-size: 20px;
color: #000000;
}
</style>
<form>Enter participant ID number: <input type="number" name="id_num" pattern="^[0-9]*$" required></form>
<br><br>
<p name="data"></p>
</body>
</html>
文件夾層次結構正確; 我有一個名為“templates”的文件夾與我正在運行的 python 文件存儲在同一位置。
知道為什么它的格式不正確嗎?
我在使用 Flask-RESTPlus 時遇到了這個問題。 事實證明這是因為我將路由定義為我的 API 的一部分,它將content-type
標頭設置為application/json
而不是 HTML。
錯誤是因為在某些時候,我在計算機的默認文本編輯器中打開了該文件,我猜它以某種方式損壞了它。 我不太確定為什么,因為我之前在其中打開了 .py 文件,沒有任何問題。
我通過創建一個新文件並用 emacs 編輯它來解決這個問題,然后重新輸入它(它不是那么大)
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.