flask基础知识——路由规划——添加路由的两种方法

书写路由的两种方法

利用Flask实例对象的 add_url_rule 方法实现

flask基础知识——路由规划——添加路由的两种方法 - 图1

该方法有一个必填参数,两个默认参数

·  rule : 请求路径的规则

endpoint : 端点,默认值是与路径规则对应的那个方法名

view_func : 与路径匹配的那个方法名,如果不指定的话就不知道执行那个方法,素以会报错

利用装饰器(@app.route())实现

注意:app.route() 执行后的返回值才是一个装饰器,route方法和add_url_rule在底层是一样的,因为route会调用add_url_rule

flask基础知识——路由规划——添加路由的两种方法 - 图2

检查路由

利用Flask实例对象的 url_map 方法

·    flask基础知识——路由规划——添加路由的两种方法 - 图3

1.flask蓝图的含义

如果我们将所有的Flask的请求方法都写在同一个文件下的话,非常的不便于我们的代码的管理和后期的功能代码的添加,简单来说蓝图就是实现一个模块化。

使用蓝图

创建蓝图

使用如图所示,找到自己需要几个模块,假设该项目只需要两个模块,一个管理者,一个用户,则需要创建两个蓝图即可。
flask基础知识——路由规划——添加路由的两种方法 - 图4代码如下所示:

  1. #创建蓝图
  2. from flask import Blueprint #先导入蓝图函数
  3. admin_blue = Blueprint('admin',__name__)
  4. from admin import viewmodel
  5. from admin import viewmodel2
  6. from admin import viewmodel3
  7. from flask import Blueprint #先导入蓝图函数
  8. user_blue = Blueprint('user',__name__)
  9. from user import userview

编写试图函数

flask基础知识——路由规划——添加路由的两种方法 - 图5代码如下所示:其他类似不一一举例

  1. from admin import admin_blue
  2. @admin_blue.route('/viewmodel')
  3. def viewmodel():
  4. return 'viewmodel'

注册蓝图

flask基础知识——路由规划——添加路由的两种方法 - 图6代码如下图所示:

  1. from flask import Flask
  2. from admin import admin_blue
  3. from user import user_blue
  4. __author__ = '小可爱'
  5. app = Flask(__name__)
  6. #注册蓝图
  7. app.register_blueprint(admin_blue)
  8. app.register_blueprint(user_blue)
  9. if __name__ == '__main__':
  10. app.run()

运行结果

输入http://127.0.0.1:5000/viewmodel2
flask基础知识——路由规划——添加路由的两种方法 - 图7输入http://127.0.0.1:5000/viewmodel
flask基础知识——路由规划——添加路由的两种方法 - 图8
输入http://127.0.0.1:5000/viewmodel3
flask基础知识——路由规划——添加路由的两种方法 - 图9