flask的常规使用二

一、路由(router)

路由指定了url 到函数之间的一个映射关系。

 

url ---> flask框架拿到url 的路径部分和路由中的内容进行匹配,如果匹配成功了则执行对应的函数。如果没有找到则返回404错误信息。

 

注意:路由中的内容必须以”/” 开头。

 

 

二、视图函数

视图函数写法和普通的函数一样,

作用:编写逻辑(调用数据库对数据库内容操作等等)、返回内容给浏览器。

注意:

(1).必须要有返回值(不能返回None),

(2).同一个py文件中,视图函数的名称不能相同。

 

三、run函数中的参数

 1 from flask import Flask
 2 
 3 app = Flask(__name__)
 4 
 5 
 6 @app.route('/index/')
 7 def index():
 8     print('我是视图函数...')
 9     return 'hello world'
10 
11 
12 if __name__ == '__main__':
13     # host:主机
14     # port:端口号 默认是5000
15     # debug:True 表示开启调试模式。更容易分析错误。好处2:项目可以自启动。
16     # use_reloader:True 当修改完项目后,会自运行,加载最新的代码。
17     app.run(host='0.0.0.0', port=8000, debug=True, use_reloader=True)

 

 

四、URL路径参数

可以将url的路径部分内容,传递到视图函数中。

 

 1 from flask import Flask
 2 
 3 app = Flask(__name__)
 4 
 5 # http://127.0.0.1:5000/index/aa/
 6 # @app.route('/index/aa/')
 7 # def index():
 8 #     return 'hello world'
 9 
10 """
11 格式:<名称msg>
12 注意:
13 (1).视图函数的位置参数必须要和'msg' 相同。
14 (2).当匹配成功后,flask将url的捕获的路径部分传递给msg位置参数
15 (3).默认方式会将内容中的'/' 当成路径分隔符。
16 (4).默认方式获取的内容是字符串类型  <string:msg> 或者 <msg>
17 """
18 
19 # 字符串类型
20 # @app.route('/index/<string:msg>/')
21 # def index1(msg):
22 #     print(msg, type(msg))  # 字符串。
23 #     return 'hello bb'
24 
25 #  path: 将url的路径分隔符当成内容使用。
26 # @app.route('/index/<path:msg>/')
27 # def index1(msg):
28 #     print(msg, type(msg))
29 #     return 'hello bb'
30 
31 # int
32 # @app.route('/index/<int:msg>/')
33 # def index1(msg):
34 #     print(msg, type(msg))
35 #     return 'hello bb'
36 
37 # float 类型
38 @app.route('/index/<float:msg>/')
39 def index1(msg):
40     print(msg, type(msg))
41 
42     return 'hello bb'
43 
44 
45 if __name__ == '__main__':
46     app.run(debug=True)

 

  

五、返回页面

 

 

注意:盛放模板文件的目录必须叫做 templates。原因是源码中已经指定了

目录的名称为templates

 

 

 

但是,我们可以来修改目录名称,修改的方式(修改源码,给默认值重新赋值)

1、页面渲染数据

 

2、返回数据

(1) .返回普通的内容

 

 

 

 

 

(2) .返回列表

 

 

 

(3) .返回字典

 

 

 

(4) .返回对象

 

 

 

(5) .组合方式

 

 

 

 

posted @ 2021-06-22 15:22  python包包侠  阅读(157)  评论(0)    收藏  举报
1