繁体   English   中英

允许未知值

Allow Unknown values

提示:本站收集StackOverFlow近2千万问答,支持中英文搜索,鼠标放在语句上弹窗显示对应的参考中文或英文, 本站还提供   中文繁体   英文版本   中英对照 版本,有任何建议请联系yoyou2525@163.com。

我在反序列化JSON响应时使用漏勺。 有一个字段配置为仅包含数字,但有时响应对此字段具有null或非数字值,然后我的应用程序引发无效错误。 有没有一种方法可以在我的程序中处理它,以将默认值(例如NA)提供给该字段。 这是一个说明情况的示例:

这是一个示例:

class SampleClass(colander.MappingSchema):
    name = colander.SchemaNode(colander.String())
    testMark  = colander.SchemaNode(colander.Float(), missing=None)


class Sample(colander.MappingSchema):
    type = colander.SchemaNode(colander.String())
    student = colander.SampleStudent()

I want the following JSON to be accepted and not throw error for testMark as null

{  
   "type":"test",
   "student":{  
      "name":"a name",
      "testMark":null
   }
}

如果代码有问题,我深表歉意,这是我第一次使用python。 希望我已经阐明了这一情况。 每当测试标记不是数字时,我想给testMark字段一个默认值,例如NA。

PS这只是一个示例方案,不能在此处发布实际方案。

1 个回复

您可以编写自己的SchemaType来接受任何值,但是将其反序列化为float或null。

http://docs.pylonsproject.org/projects/colander/zh-CN/latest/extending.html

class MyFloat(colander.Float):

    def deserialize(self, node, cstruct):
        if isinstance(cstruct, float):
            return cstruct
        else:
            return null

我没有对此进行测试,但希望您能理解。

1 子类int允许“未知”值

我有点被困在这里。 我基本上是在试验阶段,我想知道我是否可以继承int ,这样它将完全像你的旧的int ,除了你将能够分配一个“未知”值,在算术运算的情况下,它将采取行动为1。 所以我可以说: 实际上,它与float('inf')工作方式类似,只是我只需要整数加上单个“特殊”值。 ...

2 Joi如何允许未知属性,只要值是字符串

我正在尝试比较joi或yup。 我们的前端客户端使用formik进行响应,而后者也使用yup。 现在,我们正在开发后端api端。 无论如何,joi或yup可以做这样的事情 我想验证该值是字符串。 该属性可能只是带有“ en”,或者是我目前不知道的其他语言支持。 我也想知 ...

3 允许未知密钥,但在模式中验证值

验证密钥未知的dict的最佳方法是什么,但值具有明确的模式。 例如: 我试过了 但是当验证通过时,这已经失败了。 失败的must_have_key和unknown_key都应该失败。 我确定了错误吗? ...

4 未知方法“允许”

所以我有这个控制器和方法: Contorller / UsersController.php 型号/表格/UsersTable.php 模板/用户/register.ctp: 实体/User.php: 因此,当我尝试访问/ users ...

6 允许对象上的未知方法

我有一个对象,它具有多个在编译时未知的方法名称。 但是,方法的签名始终相同。 我尝试使用这样的索引类型: 但是,打字稿抱怨它无法将其他方法签名放入此: 类型 '{ (fn: Function): void; 的属性 'each' (...args: any[]): void; }' 不 ...

7 未知的Heroku Git消息不会允许我推送

在部署到heroku之前,我正在配置Django代码和数据库。 通过git推送到Heroku之后,我成功安装了消息,然后随之而来。 是因为我在requirements.txt中有一个旧的依赖项吗? ...

8 使用argparse允许未知参数

我有一个python脚本,要求用户输入两个参数来运行它,这些参数可以命名为任何东西。 我还使用了argparse,以允许用户使用开关'-h'来获取运行脚本所需的指令。 问题是,现在我使用argparse时,在脚本中传递两个随机命名的参数时出现错误。 当前当我运行python ...

9 XSD:以任何顺序允许任何未知元素

我需要编写一个XSD架构。 在此架构中,一些元素是已知的和强制性的,其他元素是未知的和可选的: 或:(更改儿童的强制性命令) 我知道强制孩子(但不知道他们的命令)。 但是我不知道是否会有可选的孩子(如果有的话,他们的名字)。 我尝试使用“ xs:all”,但是“ xs: ...

2015-09-23 14:12:17 1 867   xml/ xsd
10 如何允许零(0)值

我想从 agreement_no 请求中获得零值。 仍然需要但得到零值所以 json 请求 null 不允许。 但在 echo 中验证不允许零值。 如何在不删除所需验证的情况下获得此值或有任何解决方案? ...

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2022 STACKOOM.COM