Flask – 静态文件

Web 应用程序通常需要静态文件,例如 javascript 文件或 CSS 文件来支持网页的显示。通常,Web 服务器被配置为为您提供服务,但在开发过程中,这些文件是从您的包中或模块旁边的 static 文件夹提供的,并且可以在 /static 在应用程序上。

一个特殊的端点"static"用于为静态文件生成 URL。

在下面的示例中,在 index.html 中的 HTML 按钮的 OnClick 事件上调用 hello.js 中定义的 javascript 函数,该按钮在 '/' 上呈现 Flask 应用程序的 URL。

from flask import Flask, render_template
app = Flask(__name__)

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

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

index.html 的 HTML 脚本如下。

<html>
   <head>
      <script type = "text/javascript" 
         src = "{{ url_for('static', filename = 'hello.js') }}" ></script>
   </head>
   
   <body>
      <input type = "button" onclick = "sayHello()" value = "Say Hello" />
   </body>
</html>

hello.js 包含 sayHello() 函数。

function sayHello() {
   alert("Hello World")
}