栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Python

Flask 快速框架入门(三,路由的变量规则和匹配规则)

Python 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

Flask 快速框架入门(三,路由的变量规则和匹配规则)

路由的变量规则
  1. 意思是说在路由当中允许出现变量,变量不同结果就是不同的,下面我通过一个例子讲解。如下代码:
from flask import Flask, Response
import setting

app = Flask(__name__)
app.config.from_object(setting)

@app.route('/')
def hello_world():
   return 'Hello World!'

data = {"1": "北京", "2": "上海", "3": "深圳"}# 路由变量规则

@app.route("/getcitv/")
def getcitv(gid):
   print(type(gid))  # 默认是str类型,不能指定是str 否则就会报错
   return f"这是{data[gid]}"
   
if __name__ == '__main__':
   app.run()
  1. 当我们在装饰器路由里面写< num >时下方的视图函数也必须要接收num不然会报黄,我们可以指定变量类型,默认是str类型不能指定是str类型会报错,指定类型语法如下:
@app.route("/add/")# 乌龟的屁股规定语法 int:
def num(num):
    return str(num + 10)  # 不转换类型页面会500错误 string, dict, tuple, Response  WSGI
  1. 大家可以去运行终端运行这个flask文件去试试这两个路由,支持的变量类型如下图其中的uuid用的地方不多如果想了解可以去搜索一下:
路由的匹配规则

这里就简单给大家一下直接看代码:

# 所有的路由搜索规则都是自上而下搜索,在写路由的是有定义的路由是唯一的。

@app.route('/projects')  # 请求路由中如果添加了/:http://127.0.0.1:5000/about/  显示Not Found
def about():
    return 'The about page'

@app.route('/projects/')  # 路由中定义'/',无论请求的URL是否带有/,都可以执行视图函数。如果请求的是有/,浏览器做了一次重定向
def projects():
    return 'The project page'

大家简单记住在flask中定义路由中如果我们加“ / ” 了我们可以不用在浏览器中添加 / 会默认跳转到,反之我们没有加“ / ”浏览器中我们也不能添加,否则会显示Not Found不存在。这里跟django是不一样的。

转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/935366.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号