【Flask】路由系统

methods

当前视图支持的请求方法

from flask import Flask,render_template
app = Flask(__name__)

@app.route("/login", methods=["GET", "POST"])
def student_info():
    return "Hello wWrd "

默认不写methods参数只支持GET请求,methods参数是我们重写里面的方法,并不是追加

endpoint

路由映射-视图函数

from flask import Flask,render_template,redirect
app = Flask(__name__)

@app.route("/login", methods=["GET", "POST"], endpoint="log")
def student_info():
    return "Hello wWrd "

# 相当于给/login取了个别名,以后在视图函数中哪里用到该路径直接使用别名就可以解析到/login这个路径

例如:
@app.route(‘/index‘,methods=[‘GET‘, ‘POST‘])
def index():
    return redirect("log")

defaults

默认参数 一旦默认参数存在 视图函数中必须有一个形参去接收 形参变量名必须与 defaults 中的一致

from flask import Flask,render_template
@app.route(‘/index‘,methods=[‘GET‘, ‘POST‘],defaults={‘id‘:2})
def index(id):   # 这个形参必须跟defaults的key保持一致
    print(id)  # 2
    return render_template(‘login.html‘)

strict_slashes

是否严格遵循路由匹配规则 "/"

from flask import Flask,render_template,redirect
app = Flask(__name__)

@app.route("/login", methods=["GET", "POST"],strict_slashes=False)
def student_info():
    return "Hello wWrd "

# 默认遵守严格模式strict_slashes=True

在我们在浏览器上请求该路径时,如果输入的是下面的路径那么浏览器会自动为我们加上路径分隔符"/"

strict_slashes=False时无论后面有没有"/"都可以匹配的到

redirect_to

永久重定向,且不会经过视图函数

@app.route(‘/index‘,methods=[‘GET‘, ‘POST‘],redirect_to=‘/login‘)
def index():
    return render_template(‘index.html‘)

动态参数路由

在请求路径中添加其他参数

from flask import Flask,render_template,redirect
app = Flask(__name__)

@app.route("/login/<args>/<int:num>", methods=["GET", "POST"],) # int表示必须是整型
def student_info(args,num):  # 形参的名字必须和路由的参数保持一致
    print(args,num)  # aaaa 2
    return "Hello word "
动态参数用 <> 包裹 <> 内可以写为 <int:num> 这样的话。参数必须是给int类型,不然会报错 <> 内不写的话,默认为str

原文地址:https://www.cnblogs.com/youxiu123/p/11605767.html

时间: 2024-08-30 11:48:40

【Flask】路由系统的相关文章

【Flask路由系统】 -- 2019-08-11 19:11:52

目录 动态路由参数 路由参数 methods endpoint defaults strict_slashes redirect_to subdomain 原文: http://106.13.73.98/__/112/ @(Flask路由) *** 动态路由参数 三种用法 <int:xx> 要求输入的url必须是可转换为int类型的 <string:xx> 要求输入的url必须是可转换为String类型 <xx> 默认使用的是可转换为String类型的 开始测试 代码如

【Flask路由系统】 &#538110;

目录 动态路由参数 路由参数 methods endpoint defaults strict_slashes redirect_to subdomain 原文: http://blog.gqylpy.com/gqy/337 "@(Flask路由) *** 动态路由参数 三种用法 <int:xx> 要求输入的url必须是可转换为int类型的 <string:xx> 要求输入的url必须是可转换为String类型 <xx> 默认使用的是可转换为String类型的

Flask最强攻略 - 跟DragonFire学Flask - 第七篇 Flask 中路由系统

Flask中的路由系统其实我们并不陌生了,从一开始到现在都一直在应用 @app.route("/",methods=["GET","POST"]) 为什么要这么用?其中的工作原理我们知道多少? 请关注跟DragonFire学Flask 之 路由系统 ,这里有你想要的答案 1. @app.route() 装饰器中的参数 如果不明白装饰器 点击这里 methods : 当前 url 地址,允许访问的请求方式 @app.route("/inf

Flask第六篇 Flask中路由系统

Flask中的路由系统其实我们并不陌生了,从一开始到现在都一直在应用 @app.route("/",methods=["GET","POST"]) 为什么要这么用?其中的工作原理我们知道多少? 请关注跟DragonFire学Flask 之 路由系统 ,这里有你想要的答案 1. @app.route() 装饰器中的参数 如果不明白装饰器 点击这里 methods : 当前 url 地址,允许访问的请求方式 @app.route("/inf

Flask系列 路由系统

Flask路由系统细分 from flask import Flask app = Flask(__name__) @app.route('/') def index(): return 'ok' if __name__ == '__main__': app.run() 从这个简单的代码入口,来剖析一下路由@app.route('/') route():就是一个加在index()上的装饰器 ?```python def route(self, rule, **options): # rule:匹

Flask之基于route装饰器的路由系统(源码阅读解析)

一 路由系统 1. 在flask中配置URL和视图函数的路由时,首先需要在main.py中实例化一个app对象: 1 from flask import Flask, render_template 2 3 app = Flask(__name__) 2. 然后通过app实例的route方法装饰视图函数,实现路由的配置: 1 @app.route('/') 2 def hello_world(): 3 return 'Hellow World!' 3. 所有这里需要关注在Flask类里定义的ro

第六篇 Flask中的路由系统

Flask中的路由系统其实我们并不陌生了,从一开始到现在都一直在应用 @app.route("/",methods=["GET","POST"]) 为什么要这么用?其中的工作原理我们知道多少? 一.@app.route() 装饰器中的参数 methods :当前 url 地址,允许访问的请求方式 @app.route("/info", methods=["GET", "POST"]) d

Flask中的路由系统

Flask中的路由系统其实我们并不陌生了,从一开始到现在都一直在应用 @app.route("/",methods=["GET","POST"]) 至于为什么这么使用,马上开始介绍 [email protected]() 装饰器中的参数 (1).methods: 当前url地址,允许访问的请求方式,默认支持"GET", 如果想加入新的请求方式,就必须加上"GET" USER = {"usernam

11.2 Flask 配置文件,路由系统

配置文件系统 自定义配置文件 创建一个 setting.py 用于存放配置文件的相关属性 配置文件中可以进行分级继承来区分不同视图的配置文件设置 默认配置文件放在项目根路径下 # settings.py class Base(object): # 所有的都要有用到的配置更改 TEST = True class Dev(Base): DEV = True class Pro(Base): PRO = True 配置文件的设置方式 常用的是以下三种 # 方式1 直接更改 app.config["要更

Flask框架(二)—— 反向解析、配置信息、路由系统、模板、请求响应、闪现、请求扩展、session

目录 反向解析.配置信息.路由系统.模板.请求响应.闪现.session 一.反向解析 1.什么是反向解析 2.使用 二.配置信息 1.默认配置 2.修改方法一--点的方式修改 3.修改方法二--利用字典修改 4.修改方法三--通过py文件修改(常用) 5.修改方法四--利用类或类的路径修改(常用) 6.其他方法修改配置 三.路由系统 1.基本写法 2.转换器 3.路由本质 4.CBV 5.自定义支持正则 四.模板 五.请求与响应 六.session 七.闪现(flash) 1.使用 2.示例