flask中的static_path和static_path_url和static_folder

  • static_folder表示静态文件所在路径,默认为root_dir下的static文件夹
  • static_url_path的行为比较复杂
    • 若是static_folder未被指定(也就是默认值static),那么static_url_path取为static
    • 若是static_folder被指定了,那么static_url_path等于static_folder的最后一级文件夹名称。
    • 手动指定static_url_path时,若是static_url_path不为空串,url的路径必须以/开头,如/static。
    • 手动指定static_url_path时,若是static_url_path为空串,url路径没必要以/开头,不然至关于static_url_path=None的状况,也就是使用static_folder的目录名字。
  • static_path即将废弃,推荐使用static_path_url

localhost:5000/why/main.pypython

import flask

app = flask.Flask(__name__, static_folder="./", static_url_path="why")
app.run(debug=True)

localhost:5000/main.pyflask

import os

import flask

app = flask.Flask(__name__, static_folder=os.path.abspath("./"), static_url_path="")
app.run(debug=True)
相关文章
相关标签/搜索