Flask 学习-79.Flask-RESTX 参数校验reqparse 解析器继承与更新

2022-09-28 16:42:37 浏览数 (1)

前言

通常我们会为每个资源创建不同的解析器,如果多个解析器直接有共同的参数,可以写一个包含所有共享参数的父解析器。 然后使用copy() 复制一个父类解析器

  • 同一个参数覆盖使用 replace_argument()
  • 完全删除参数校验remove_argument()
  • 继续添加参数add_argument()

解析器继承

基于一个父类解析器

代码语言:javascript复制
from flask_restx import reqparse

parser = reqparse.RequestParser()
parser.add_argument('foo', type=int)
parser_copy.add_argument('bar', type=int)

使用copy()方法复制一份

代码语言:javascript复制
parser_copy = parser.copy()
parser_copy.add_argument('car', type=str)

于是parser_copy 会校验3个参数:foo,bar, car

替换

replace_argument()替换原有的参数校验

代码语言:javascript复制
parser_copy.replace_argument('foo', required=True, location='json')

替换后’foo’参数就是一个必填项了,并且设置了校验位置location='json'

删除

remove_argument() 删除多余的参数

代码语言:javascript复制
parser_copy.remove_argument('foo')

parser_copy 就不会对’foo’参数校验了

2022年第 12期《python接口web自动化 测试开发》课程,9月17号开学!

本期上课时间:2022年9月17号 - 2022年12月17号,周六周日上午9:00-11:00

报名费:报名费3000一人(周期3个月)

联系微信/QQ:283340479

0 人点赞