一、路由请求和参数处理
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
# 1.导入Flask扩展
from flask import Flask
# 2.创建Flask应用程序实例
# 需要传入__name__,作用是为了确定资源所在的路径
app = Flask(__name__)
# 3.定义路由及视图函数
# Flask中定义路由是通过装饰器实现的
# 路由默认只支持GET,如果需要增加,需要自行指定
@app.route('/', methods = ['get', 'post'])
def index():
return 'Hello World'
# 使用同一个视图函数来显示不同用户的订单信息
# <>定义路由参数,<>内需要起个名字
@app.route('/orders/<int:order_id>')
def get_order_id(order_id):
# 参数类型,默认是字符串,<class str>
print(type(order_id))
# 有的时候,需要对路由做访问优化,订单ID应该是int类型
# 需要在视图函数的()内填入参数名,那么的代码才能去使用
return 'order_id %s' % order_id
# 4.启动程序
if __name__ == '__main__':
# 执行了app.run,就会将Flask程序运行在一个简易的服务器(Flask提供的,用于测试)
app.run()
二、模板、变量代码块、控制代码块和过滤器
1、py文件
#!/usr/bin/env python3
# -*- coding:utf-8 -*-
from flask import Flask
from flask import render_template
app = Flask(__name__)
# 1.如何返回一个网页(模板)
# 2.如何给模板填充数据
@app.route('/')
def index():
# 比如需要传入网址
url_str = 'www.itheima.com'
my_list = [1,3,5,7,9]
my_dict = {
"name": "沐阳陈",
"url": "www.baidu.com",
}
my_int = 38
# 通常,模板中使用的变量名和要传递的数据变量名保持一致
return render_template('index.html',
url_str=url_str,
my_list=my_list,
my_dict=my_dict,
my_int=my_int,
)
if __name__ == '__main__':
app.run()
2、html文件