首页
学习
活动
专区
圈层
工具
发布
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    测试开发进阶(二十六)

    指定该字段只进行反序列化输入,但不进行序列化输出 required该字段在反序列化时必须传入,默认为True default反序列化时使用的默认值 allow_null该字段是否允许传入None,默认False...包含错误key与错误信息的字典(下面有例子) label用于HTML展示API页面时,显示的字段名称 选项参数 max_length最大长度 min_length最小长度 allow_blank是否允许为空...trim_whitespace是否截断空白字符 max_value最小值 min_value最大值 校验 调用序列化器对象的 is_valid方法,才开始校验前端参数 如果校验成功,则返回 True,...校验失败返回 False raise_exception=True,校验失败后会抛出异常 当调用 is_valid方法之后,才可以调用 errors属性「校验的错误提示(字典)」 try: serializer.is_valid...这里 name为 None是因为上面单字段校验没有返回value 修改后再次测试 def validate_name(self, value): if not value.endswith('项目

    52060

    【愚公系列】2022年04月 Python教学课程 65-DRF框架之请求和响应

    2.响应对象 REST 框架还引入了一个对象,该对象是一种获取未渲染内容并使用内容协商来确定要返回给客户端的正确内容类型。...3.状态码 在视图中使用数字 HTTP 状态代码并不总是能带来明显的阅读效果,如果错误代码出错,也很容易不注意到。REST 框架为每个状态代码(如模块中)提供了更明确的标识符。...elif request.method == 'POST': serializer = SnippetSerializer(data=request.data) if serializer.is_valid...return Response(serializer.data, status=status.HTTP_201_CREATED) return Response(serializer.errors..., "language": "python", "style": "friendly" } ] 我们可以通过使用标头来控制返回的响应的格式:Accept http http://127.0.0.1

    77630

    奇怪的Java题:为什么128 == 128返回为false,而127 == 127会返回为true?

    奇怪的Java题:为什么128 == 128返回为false,而127 == 127会返回为true? 在回答这个问题之前,我们先来看看int和Integer的对比,一步步揭开问题的答案。...Integer i = new Integer(100); Integer j = new Integer(100); System.out.print(i == j); //false 因为new生成的是两个对象...,其内存地址不同 (2) Integer变量和int变量比较时,只要两个变量的值是相等的,则结果为true。...Integer和基本数据类型int比较时,java会自动拆包装为int,然后进行比较,实际上就变为两个int变量的比较 (3) 非new生成的Integer变量和new Integer()生成的变量比较时,结果为false...Integer i = new Integer(100); Integer j = 100; System.out.print(i == j); //false 在JDK 5.0之前,你从未见过Integer

    3K31

    DRF框架使用时的一些注意点

    DRF框架使用时的一些注意点 之前的文章代码块在安卓手机显示正常,但是苹果手机总是不能滚屏,非常影响阅读。今天总算解决了这个问题,苹果手机显示正常了。希望给大家带来最好的阅读体验。...我们指定了partial参数为True的时候,就是允许我们只修改btitle部分,校验时是不会报错的。...()) print(serializer.errors) # 反序列化-数据的保存 # save里面是可以传递参数的,我们在调用create和update的时候也是可以取的到值的...好处: 1.依据模型类的字段自动生成序列化器类的字段 2.已经实现了create和update方法的代码 5.反序列化校验 反序列化校验数据的时候我们用到了is_valid方法: serializer.is_valid...它默认是为False的,也就是如果校验失败的时候,给我们返回False。如果我们将参数的值改为True,那么在校验失败的时候不会给我们返回False,而是直接报错。

    78730

    MeterSphere教程:接口返回结果为空时如何进行断言

    背景: 最近在使用Metersphere做接口测试的时候,在断言的时候,遇到一些异常的场景是去检查是否查不到数据的这种场景,在断言的时候遇到的问题分享给大家: 先来看如果在python中,返回结果为空是什么样的...: 接下来,在平台中调试该接口,进行断言的时候: 1、先尝试断言Response Data是否为null或者"",然后结果如下: 从上面的截图中可以看出,断言最终以失败告终,可能平台针对返回结果为空时...,不知道做了什么处理还是有bug,反正这种情况下的断言不方便 2、使用脚本断言 思路:先调用全局函数prev.getResponseDataAsString()拿到返回结果。...然后再判断返回结果是不是== "" 。

    3K20

    drf序列化器之反序列化的数据验证

    在获取反序列化的客户端数据前,必须在视图中调用序列化对象的is_valid()方法,序列化器内部是在is_valid方法内部调用验证选项和验证方法进行验证,验证成功返回True,否则返回False。...,当字段设置为read_only为True,则当前字段只会在序列化阶段使用 id = serializers.IntegerField(read_only=True) title = serializers.CharField...# 如果是ajax请求,则自动返回json格式的错误信息 # 如果是表单请求,则自动返回html格式的错误信息 result = serializer.is_valid(...) return JsonResponse(serializer.errors) else: # 获取验证完成后的客户端数据 如果验证失败...child=) 选项参数: 参数名称 作用 max_length 最大长度[适用于字符串,列表,文件] min_lenght 最小长度[适用于字符串,列表,文件] allow_blank 是否允许数据的值为空

    2.5K30

    Mybatis查询结果为空时,为什么返回值为NULL或空集合?

    这个可以关注 mybatis 配置中的 returnInstanceForEmptyRow 属性,它默认为 false。 当返回行的所有列都是空时,MyBatis 默认返回 null。...回归最初的问题:查询结果为空时的返回值 | 返回结果为单行数据 可以从 ResultSetHandler的handleResultSets 方法开始分析。...list,此时 list.size() == 1和list.size() > 1 均为 false,所以它的返回值为 NULL。...所以不管是集合类型还是普通对象,Mybatis 都会先初始化一个 List 存储结果,然后返回值为普通对象且查为空的时候,selectOne 会判断然后直接返回 NULL 值。...而返回值为集合对象且查为空时,selectList 会把这个存储结果的 List 对象直接返回,此时这个 List 就是个空集合。

    6.9K20
    领券