# Flask实例的源码:
class Flask(_PackageBoundObject):
def __init__(self, import_name, # 指定应用的名字和工程目录,默认为__name__
static_path=None, # 是静态文件存放的路径,会赋值给static_url_path参数
static_url_path=None, # 设置静态文件路由的前缀,默认为“/static”
static_folder='static', # 静态文件的存放目录, 默认值为"static"
template_folder='templates', # 模板文件的存放目录,默认值为"templates"
instance_path=None, # 设置配置文件的路径,在instance_relative_config=True情况下生效
instance_relative_config=False # 设置为True表示配置文件相对于实例路径而不是根路径
root_path=None) # # 应用程序的根路径
在使用flask开发web服务端时,flask 默认的 前端路径再 templates下,静态文件再 static下
/app.py
/static
/js
/css
/img
/templates
/index.html
如果不移动或者修改 app默认路径,可以直接这样写:
app = Flask(__name__)
html引用时加上static
<script src="/potree/page_template/cowa_3DModul.js"></script>
static_url_path: 前端访问资源文件的前缀目录。默认是/static,就是前端必须这样访问:<img src="/static/img/mylogo.jpg" /> 我们改成 '',就可以这样访问了:<img src="/img/mylogo.jpg" />。就达到前端从根目录访问的目的了
即:app = Flask(__name__,template_folder='',static_folder='')
如果不按照官方文件结构设计,即指定任意目录
/test
/app.py
/test1
/static
/js
/css
/img
/templates
/index.html
#构建绝对路径
path = str((Path(__file__).parent).absolute())+"/test1/static"
设置template和static路径
app = Flask(__name__,template_folder='../test1/templates',static_folder=path)
此时实例化后参数为
static_folder /..../test1/static
static_url_path /static
template_folder ../test1/templates
注意static_url_path ,这个参数值在html中要添加到引用目录前面