python安装flask,flask框架,使用静态文件、模板、get和post请求
flask框架安装
pip install flask
1.创建app.py文件
启动运行
# 导入Flask类
from flask import Flask
#Flask类接收一个参数__name__
app = Flask(__name__)
# 装饰器的作用是将路由映射到视图函数index
@app.route('/')
def index():
return 'Hello World'
# Flask应用程序实例的run方法启动WEB服务器
if __name__ == '__main__':
app.run()
2.静态文件和模板使用
static_folder
静态文件存储的文件夹,可以不传,默认为 static
template_folder
模板文件存储的文件夹,可以不传,默认为 templates
# 导入Flask类
from flask import Flask, render_template
#Flask类接收一个参数__name__
#static_folder静态文件路径,可以不传,默认静态文件路径static
#template_folder模板路径html,可以不传,默认templates
app = Flask(__name__, static_folder='static')
# 装饰器的作用是将路由映射到视图函数index
@app.route('/')
def index2():
#return 'Hello World'
return render_template('index.html')
# Flask应用程序实例的run方法启动WEB服务器
if __name__ == '__main__':
app.run(host="0.0.0.0", port=5000, debug = True)
3、制作配置文件
创建setting.py
SECRET_KEY = 'TPmi4aLWRbyVq8zu9v82dWYW1'
SECRET_KEY33 = 'TPmi4aLWRbyVq8zu9v82dWYW1666'
使用
# 导入Flask类
from flask import Flask, render_template
#Flask类接收一个参数__name__
#static_folder静态文件路径,可以不传,默认静态文件路径static
#template_folder模板路径html,可以不传,默认templates
app = Flask(__name__, static_folder='static')
app.config.from_pyfile('setting.py')
# 装饰器的作用是将路由映射到视图函数index
@app.route('/')
def index2():
print(app.config['SECRET_KEY'])
print(app.config['SECRET_KEY33'])
return 'Hello World'
# Flask应用程序实例的run方法启动WEB服务器
if __name__ == '__main__':
app.run(host="0.0.0.0", port=5000, debug = True)
4、路由
查看路由命令:flask routes
程序中答应路由:print(app.url_map)
for rule in app.url_map.iter_rules():
print(‘name={} path={}’.format(rule.endpoint, rule.rule))
创建user.py
from flask import Blueprint
user_bp=Blueprint('user',__name__)
@user_bp.route('/')
def user_profile():
return 'user_profile'
@user_bp.route('/dade')
def dade():
return 'user_profile222'
主框架引入路由
# 导入Flask类
from flask import Flask, Blueprint
#Flask类接收一个参数__name__
#static_folder静态文件路径,可以不传,默认静态文件路径static
#template_folder模板路径html,可以不传,默认templates
from apps.user import user_bp
app = Flask(__name__, static_folder='static')
app.config.from_pyfile('setting.py')
#注册路由
app.register_blueprint(user_bp, url_prefix='/user')
# 装饰器的作用是将路由映射到视图函数index
@app.route('/')
def index2():
print(app.config['SECRET_KEY'])
print(app.config['SECRET_KEY33'])
return 'Hello World'
@app.route("/itcast1", methods=["POST"])
def view_func_1():
return "hello world 1"
@app.route("/itcast2", methods=["GET", "POST"])
def view_func_2():
return "hello world 2"
# Flask应用程序实例的run方法启动WEB服务器
if __name__ == '__main__':
app.run(host="0.0.0.0", port=5000, debug=True)
5、get和post请求
# 导入Flask类
from flask import Flask, request
#Flask类接收一个参数__name__
#static_folder静态文件路径,可以不传,默认静态文件路径static
#template_folder模板路径html,可以不传,默认templates
from apps.user import user_bp
app = Flask(__name__, static_folder='static')
app.config.from_pyfile('setting.py')
#注册路由
app.register_blueprint(user_bp, url_prefix='/user')
# 装饰器的作用是将路由映射到视图函数index
@app.route('/')
def index2():
print(app.config['SECRET_KEY'])
print(app.config['SECRET_KEY33'])
return 'Hello World'
@app.route("/itcast1", methods=["POST"])
def view_func_1():
req = request.form
return "hello world 1"+req['dades']
@app.route("/itcast2", methods=["GET", "POST"])
def view_func_2():
req = request.args.get("dades")
return "333"+req
# Flask应用程序实例的run方法启动WEB服务器
if __name__ == '__main__':
app.run(host="0.0.0.0", port=5000, debug=True)