flask的启动,flask小白必会4板斧,以及flask做配置

如何启动一个flask项目

'''
pip install flask

'''
# 1 导入flask,我们要用flask,就必须导入Flask
from  flask import Flask
# 2 生成一个Flask对象,__name__表示当前文件的名字
app = Flask(__name__)



# 3 添加路由,flask用的是装饰器的模式
#注册路由,并写响应函数index
@app.route("/")
def index():
    return "Hello flask"

if __name__ == '__main__':
    #4 启动flask
    #run里面是执行了run_simple(host,port,self=app,也就是flask对象)
    app.run()

flask四剑客 (返回字符串,返回html,跳转路由,返回json)

# 1 如何响应一个字符串
# 2 如何响应一个html页面
# 3 如何跳转页面
# 4 如何返回一个json字符串

from  flask import Flask,render_template,redirect,jsonify
app = Flask(__name__)
@app.route("/index")
def index():
    #1 返回字符串
    #return "你号,我是字符串"
    # 1  返回一个html,
            # 1 从flask里面导入render_template,2 在同级目录中添加templates文件夹,将html页面这个文件夹底下
    #return render_template("index.html")
    # 3 跳转路由,1 从flask里面导入redirect
    #return  redirect("/login")
    # 4 返回数据转json返回,要从flask中导入jsonify
    data = {'name':"jason","name1":"owen"}
    return  jsonify(data)

@app.route("/login")
def login():
    return "我是login页面"


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

flask的配置文件

    
 {
        'DEBUG':                                get_debug_flag(default=False),  是否开启Debug模式
        'TESTING':                              False,                          是否开启测试模式
        'PROPAGATE_EXCEPTIONS':                 None,                          
        'PRESERVE_CONTEXT_ON_EXCEPTION':        None,
        'SECRET_KEY':                           None,
        'PERMANENT_SESSION_LIFETIME':           timedelta(days=31),
        'USE_X_SENDFILE':                       False,
        'LOGGER_NAME':                          None,
        'LOGGER_HANDLER_POLICY':               'always',
        'SERVER_NAME':                          None,
        'APPLICATION_ROOT':                     None,
        'SESSION_COOKIE_NAME':                  'session',
        'SESSION_COOKIE_DOMAIN':                None,
        'SESSION_COOKIE_PATH':                  None,
        'SESSION_COOKIE_HTTPONLY':              True,
        'SESSION_COOKIE_SECURE':                False,
        'SESSION_REFRESH_EACH_REQUEST':         True,
        'MAX_CONTENT_LENGTH':                   None,
        'SEND_FILE_MAX_AGE_DEFAULT':            timedelta(hours=12),
        'TRAP_BAD_REQUEST_ERRORS':              False,
        'TRAP_HTTP_EXCEPTIONS':                 False,
        'EXPLAIN_TEMPLATE_LOADING':             False,
        'PREFERRED_URL_SCHEME':                 'http',
        'JSON_AS_ASCII':                        True,
        'JSON_SORT_KEYS':                       True,
        'JSONIFY_PRETTYPRINT_REGULAR':          True,
        'JSONIFY_MIMETYPE':                     'application/json',
        'TEMPLATES_AUTO_RELOAD':                None,
    }

# 4中方法给flask做配置

# 1直接给app对象赋值属性
# 2 以字典的形式,给flask做配置
# 3 以文件的形式,给flask做配置(django就是用这种)
# 4 以类的形式,给flask做配置(如果用flask,推荐是使用第4中)

from flask import Flask

app = Flask(__name__)
# 1方式1(不推荐),因为他只能配置两个配置项,一个是debug 一个是secret_key
# app.debug = True

# 2 方式2 字典的形式,这个里面就可以对所有的flask配置项做配置
#app.config["DEBUG"] = True

#3 方式3 以文件的形式,在form_pyfile(里面传递配文件的路径)
#app.config.from_pyfile("settings.py")

#4 方式4 以类的形式,那为什么推荐大家使用这个呢?因为他可以实现一个文件多个配置,而且减少测试与上线更改的配置项
app.config.from_object("setobj.settings")



@app.route("/")
def index():
    return "jason is dsb"

if __name__ == '__main__':
    app.run()
posted @ 2020-03-18 23:19  alen_zhan  阅读(218)  评论(0编辑  收藏  举报
返回顶部