Flask之Flask实例有哪些参数

常用的参数应用实例

from flask import Flask, render_template, url_for, session, request, redirect

app = Flask(__name__, template_folder="templates111", static_folder="jingtaimulu", static_url_path='/static')  #
app.secret_key = "wang"


def confirm(func):
    def inner(*args, **kwargs):
        if session.get('auth'):
            return func(*args, **kwargs)
        else:
            next_url = request.path[1:]
            return redirect(url_for("login") + f"?next={next_url}")

    return inner


@app.route('/', endpoint="index")
@confirm
def index():
    return "index"


@app.route('/login', methods=["GET", "POST"])
def login():
    msg = ""
    if request.method == "POST":
        auth = request.form.get("auth")
        if auth:
            session["auth"] = auth
            next_url = request.args.get("next", "index")
            return redirect(url_for(next_url))
        else:
            msg = "error"
    return render_template("login.html", msg=msg)


@app.route('/shopping/', endpoint="shopping")
def shopping():
    return "Shopping"


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

参数解析

class Flask(_PackageBoundObject)  
  def __init__(
            self,
            import_name,
            static_url_path=None,   # 静态文件的访问路径, 就相当于别名, 类似于django中的 {% load static %}, 资源的url开头就是这里指定的路径
            static_folder='static',     # 静态文件目录的路径 默认当前项目中的static目录
            static_host=None,   # 远程静态文件所用的Host地址, 如CDN的主机地址
            host_matching=False,    # 是否开启host主机位匹配,是要与static_host一起使用,如果配置了static_host, 则必须赋值为True
            subdomain_matching=False,   # 理论上来说是用来限制SERVER_NAME子域名的,但是目前还没有感觉出来区别在哪里
            template_folder='templates',    # template模板目录, 默认当前项目中的 templates 目录
            instance_path=None,     # 指向另一个Flask实例的路径
            instance_relative_config=False,     # 是否加载另一个实例的配置
            root_path=None      # 主模块所在的目录的绝对路径,默认项目目录
原文地址:https://www.cnblogs.com/594504110python/p/10133580.html