如何启动一个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()