使用HTML的Flask项目无效

时间:2017-06-12 10:14:15

标签: python html python-3.x flask localhost

我正在尝试运行这个Flask项目,认为它不起作用。有谁知道为什么?

.py文件:

from flask import Flask, render_template

app = Flask(__name__)


@app.route("/")
def hoofdpagina():
    return render_template("afvink2.html")


if __name__ == '__main__':
    app.run()

HTML文件:

<!DOCTYPE html>
<html>
<body onunload="Reset()"  style="background-color:Pink;">
<head>
                <title>Messenger </title>
        </head>

        <h3>Messenger</h3>
Messagebox:<br> <textarea id="chatbox" cols="50" rows="5"></textarea> <br><br>
<br><input type="text" id="P1" value="ADI" ><input type="text" id="first"><button onclick="B1Function()">Send</button><br><br>
<br><input type="text" id="P2" value="JS" > <input type="text" id="second"><button onclick="B2Function()">Send</button>


<script>
function B1Function() {
    document.getElementById("chatbox").value += document.getElementById("P1").value ;
    document.getElementById("chatbox").value += ": " ;
    document.getElementById("chatbox").value += document.getElementById("first").value ;
    document.getElementById("chatbox").value += "\r"
    document.getElementById("first").value = ""

}
function B2Function() {

    document.getElementById("chatbox").value += document.getElementById("P2").value ;
    document.getElementById("chatbox").value += ": " ;
    document.getElementById("chatbox").value += document.getElementById("second").value ;
    document.getElementById("chatbox").value += "\r"
    document.getElementById("second").value = ""

}
function Reset() {
    document.getElementById("Berichtenbox").value = ""
    document.getElementById("first").value = ""
    document.getElementById("second").value = ""

}
</script>

</body>
</html>

错误:

C:\...\...\...\
 * Running on http://127.0.0.1:5000/ (Press CTRL+C to quit)
127.0.0.1 - - [12/Jun/2017 12:12:07] "GET / HTTP/1.1" 500 -

页面http://127.0.0.1:5000/说:

Internal Server Error

The server encountered an internal error and was unable to complete your request. Either the server is overloaded or there is an error in the application.

有谁知道如何解决这个问题?谢谢!

2 个答案:

答案 0 :(得分:1)

您的项目结构应为此。

├── app.py
└── templates
    └── afvink2.html
默认情况下,

render_template方法会查看模板目录。

您还可以将模板目录配置为视图公开

简单地提到烧瓶中的参​​数

app = Flask(__name__, template_folder="views")
app = Flask(__name__, template_folder="path/to/whatever")

请检查配置瓶提供的内容。 他们的documentation非常整洁。

答案 1 :(得分:0)

Flask将在“templates”目录中查找模板。将您的html模板移动到模板目录中。它应该工作