当前位置: 首页 > wzjs >正文

福田附近公司做网站建设哪家效益快长沙网络工程学院

福田附近公司做网站建设哪家效益快,长沙网络工程学院,海曙区住房和建设局网站,做网站要素路由的基本定义 路由就是一种映射关系。是绑定应用程序(视图)和url地址的一种一对一的映射关系!在开发过程中,编写项目时所使用的路由往往是指代了框架/项目中用于完成路由功能的类,这个类一般就是路由类,…
路由的基本定义

路由就是一种映射关系。是绑定应用程序(视图)和url地址的一种一对一的映射关系!在开发过程中,编写项目时所使用的路由往往是指代了框架/项目中用于完成路由功能的类,这个类一般就是路由类,简称路由。

flask中,url可以传递路由参数,有2种方式:

路由参数就是url路径的一部分。路由的名称必须全局唯一,不能重复。

# 1. 导入flask核心类
from flask import Flask# 2. 初始化web应用程序的实例对象
app = Flask(__name__)# 开启debug模式
app.config["DEBUG"] = True# 参数1:rule设置当前视图的路由地址
# 参数2:methods,设置当前视图的HTTP请求方法,允许一个或多个方法,不区分大小写
@app.route(rule="/", methods=["get", "post"])
def index():return "<h1>hello flask1</h1>"if __name__ == '__main__':# 3. 运行flask提供的测试web服务器程序app.run(host="0.0.0.0", port=5000)
接收任意路由参数
# 1. 导入flask核心类
from flask import Flask# 2. 初始化web应用程序的实例对象
app = Flask(__name__)# 开启debug模式
app.config["DEBUG"] = True@app.route(rule="/", methods=["get", "post"])
def index():return "<h1>hello flask1</h1>""""
路由参数的传递
小括号圈住,里面写上参数变量名
在视图中即可通过参数列表按命名来接收
接收参数时,如果没有在设置路由中设置参数的类型,则默认参数类型为字符串类型
"""
@app.route("/goods/<cid>/<gid>")
def goods(gid, cid):print(gid, type(gid))print(cid, type(cid))return f"显示cid={cid},gid={gid}的商品信息"if __name__ == '__main__':# 3. 运行flask提供的测试web服务器程序app.run(host="0.0.0.0", port=5000)

接收限定类型参数

限定路由参数的类型,flask系统自带转换器编写在werkzeug/routing/converters.py文件中。底部可以看到以下字典

# converters用于对路由中的参数进行格式转换与类型限定的
DEFAULT_CONVERTERS: t.Mapping[str, t.Type[BaseConverter]] = {"default": UnicodeConverter, # 默认类型,也就是string"string": UnicodeConverter, # 字符串,不包含 /"any": AnyConverter,    # 任意类型"path": PathConverter,  # 也是字符串,但是包含了 /"int": IntegerConverter,"float": FloatConverter,"uuid": UUIDConverter,
}

系统自带的转换器具体使用方式在每种转换器的注释代码中有写,请留意每种转换器初始化的参数

转换器名称描述
string默认类型,接受不带斜杠的任何文本
int接受正整数
float接受正浮点值
path接收string但也接受斜线
uuid接受UUID(通用唯一识别码)字符串 xxxx-xxxx-xxxxx-xxxxx
# 1. 导入flask核心类
from flask import Flask# 2. 初始化web应用程序的实例对象
app = Flask(__name__)# 开启debug模式
app.config["DEBUG"] = True@app.route(rule="/", methods=["get", "post"])
def index():return "<h1>hello flask1</h1>""""
通过路由转换器来对路由参数显示格式转换和限制类型
"""
@app.route("/goods/<float:cid>/<uuid:gid>")
def goods(gid, cid):print(gid, type(gid))print(cid, type(cid))return f"显示cid={cid},gid={gid}的商品信息"if __name__ == '__main__':# 3. 运行flask提供的测试web服务器程序app.run(host="0.0.0.0", port=5000)

可以在终端获取uuid

没有输入正确的信息就是这样子的

自定义路由参数转换器

也叫正则匹配路由参数.

在 web 开发中,可能会出现限制用户访问规则的场景,那么这个时候就需要用到正则匹配,根据自己的规则去限定请求参数再进行访问

具体实现步骤为:

  • 导入转换器基类BaseConverter:在 Flask 中,所有的路由的匹配规则都是使用转换器对象进行记录
  • 自定义转换器:自定义类继承于转换器基类BaseConverter
  • 添加转换器到默认的转换器字典DEFAULT_CONVERTERS中
  • 使用自定义转换器实现自定义匹配规则

代码实现
这里定义的规则是手机号码

# 1. 导入flask核心类
from flask import Flask# 2. 初始化web应用程序的实例对象
app = Flask(__name__)# 开启debug模式
app.config["DEBUG"] = True"""
自定义路由转换[在实际项目开发中,我们会单独准备一个python文件来保存转换器的定义代码]
"""# 导入转换器基类
from werkzeug.routing.converters import BaseConverter#自定义转换器
class RegexConverter(BaseConverter):def __init__(self, map, *args, **kwargs):super().__init__(map, *args, **kwargs)self.regex = args[0]#添加转换器到默认的转换器字典中,并指定转换器使用时名字为: re
app.url_map.converters["re"] = RegexConverter@app.route("/sms/<re('1[3-9]\d{9}'):mobile>")
def sms(mobile):return f"发送短信给手机号:{mobile}的用户"@app.route("/goods/<re('\d+'):id>")
def goods(id):return f"显示商品id={id}的信息"if __name__ == '__main__':# 3. 运行flask提供的测试web服务器程序app.run(host="0.0.0.0", port=5000)

运行测试:http://127.0.0.1:5000/sms/13012345671 ,如果访问的url不符合规则,会提示找不到页面

http://www.dtcms.com/wzjs/584772.html

相关文章:

  • 专为男人做的网站网站建设中图片多少钱
  • 织梦网站模板官网三站合一网站建设方案
  • 医疗器械外贸网站建设网站常见 8
  • 建设部电教中心网站住房与城乡建设部建设环境工程技术中心网站
  • 资源专业网站优化排名新建网站站点的
  • ink域名网站wordpress外贸主题用哪个好
  • 网站建设流程总结网站做等级保护
  • 无锡网站策划自建网站备案
  • 房山企业网站建设公司电子商务网站建设描述
  • 湖南网站开发 岚鸿wordpress主页不加index.php 打不开
  • 单位网站建设的必要性wordpress后台如何设置404页面
  • 网站栏目规划叫什么宁夏银川网站建设
  • 建设银行保定分行网站wordpress 家装装修模板
  • 网站会员系统怎么做模版网页设计师职业要求
  • vps怎么做多个网站怎么创建图片链接
  • 前端做兼职网站重庆安全工程信息网
  • 网站模块是啥简单的个人简历网页代码
  • 官网的建站过程个人做的微网站一年要交多少钱
  • 广州建设厅官方网站外汇网站建设
  • 网站两边的悬浮框怎么做东莞著名网站建设
  • 做网站必须要购买域名系统 网站开发工程师
  • 怎么做淘宝客优惠劵网站做本地网站要服务器吗
  • 网络舆情的三种分类标准新网站如何做网站优化
  • 培训学校网站社区网站建设方案
  • 什么网站算是h5做的新绛网站建设
  • 设计网络网站wordpress模板文件编辑插件
  • 蔬莱网站建设杭州网站排名优化公司
  • 网站规划与设计大作业wordpress手机颜色
  • 仿互动吧网站源码旅游网络营销案例
  • 网页设计与网站建设 郑州大学漳州那里有做网站