Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/286.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 忽略棉花糖中无效嵌套多字段的实例_Python_Python 3.x_Marshmallow - Fatal编程技术网

Python 忽略棉花糖中无效嵌套多字段的实例

Python 忽略棉花糖中无效嵌套多字段的实例,python,python-3.x,marshmallow,Python,Python 3.x,Marshmallow,在中,是否可以省略验证失败而父模式未失败的嵌套模式的实例?例如,Atom提要可以有许多条目。如果一个条目缺少必填字段,是否可以省略该条目,以便提要及其正确解析的条目在没有失败条目的情况下通过验证 来自棉花糖导入模式 类提要(架构): “”“Atom/RSS源。”“” ... 条目=字段。嵌套('Entry',many=True) ... 类条目(架构): “”“Atom/RSS源的文章。”“” ... title=fields.String(必需=True) link=fields.Url(必需

在中,是否可以省略验证失败而父模式未失败的嵌套模式的实例?例如,Atom提要可以有许多条目。如果一个条目缺少必填字段,是否可以省略该条目,以便提要及其正确解析的条目在没有失败条目的情况下通过验证

来自棉花糖导入模式
类提要(架构):
“”“Atom/RSS源。”“”
...
条目=字段。嵌套('Entry',many=True)
...
类条目(架构):
“”“Atom/RSS源的文章。”“”
...
title=fields.String(必需=True)
link=fields.Url(必需=True)
...
在验证提要之前

...
"entries": [
  {
    "title": "Title A",
    "link": "http://httpbin.org/status/200"
  },
  {
    "title": "",
    "link": "",

  },
  {
    "title": "Title C",
    "link": "http://httpbin.org/status/200"
  },
]
...
...
"entries": [
  {
    "title": "Title A",
    "link": "http://httpbin.org/status/200"
  },
  {
    "title": "Title C",
    "link": "http://httpbin.org/status/200"
  },
]
...
验证提要后

...
"entries": [
  {
    "title": "Title A",
    "link": "http://httpbin.org/status/200"
  },
  {
    "title": "",
    "link": "",

  },
  {
    "title": "Title C",
    "link": "http://httpbin.org/status/200"
  },
]
...
...
"entries": [
  {
    "title": "Title A",
    "link": "http://httpbin.org/status/200"
  },
  {
    "title": "Title C",
    "link": "http://httpbin.org/status/200"
  },
]
...
decorator可用于过滤嵌套字段,但我假设每个嵌套模式反序列化两次:一次在预加载期间,一次在加载期间

类提要(架构):
...
条目=字段。嵌套('Entry',many=True)
...
@预加载
def过滤器_条目(自身、数据、**kwargs):
schema=Entry()
过滤=[]
对于数据['entries']中的条目:
尝试:
filtered.append(schema.load(条目))
除ValidationError外:
持续
数据['entries']=已筛选
返回数据