gpt4 book ai didi

python - 嵌套字典字段中的前夕 0.8 `allow_unknown`

转载 作者:太空宇宙 更新时间:2023-11-04 02:24:33 25 4
gpt4 key购买 nike

我们使用 Eve 0.7 开发了一个 API,该 API 使用 allow_unknown on a nested dict field .根据 cerberus 文档,该字段按预期工作。

我们现在升级到 Eve 0.8,我们的端点不再遵守嵌套字典中的 allow_unknown 参数。

例子

settings.py

DOMAIN = {
'endpoint': {
'schema': {
'data': {
'type': 'dict',
'allow_unknown': True,
'schema': {
'prop': {'type': 'string'}
}
}
}
}
}

RESOURCE_METHODS = ['GET', 'POST', 'DELETE']
ITEM_METHODS = ['GET', 'PATCH', 'PUT', 'DELETE']

app.py

from eve import Eve

app = Eve()
app.run(debug=True)

测试

  • 运行应用程序:$ python app.py
  • 使用 curl 测试端点:

通过

$ curl -d '{"data": {"prop": "test prop"}}' -H 'Content-Type: application/json'  http://127.0.0.1:5000/endpoint
{"_updated": "Fri, 08 Jun 2018 19:43:11 GMT", "_created": "Fri, 08 Jun 2018 19:43:11 GMT", "_etag": "e04dd19a6e13c74ccdb5561722bb001b0f5dff28", "_id": "5b1adc4f198a2527650320a4", "_links": {"self": {"title": "Endpoint", "href": "endpoint/5b1adc4f198a2527650320a4"}}, "_status": "OK"}

失败(本应通过)

$ curl -d '{"data": {"prop": "test prop", "test": 2}}' -H 'Content-Type: application/json'  http://127.0.0.1:5000/endpoint
{"_status": "ERR", "_issues": {"data": {"test": "unknown field"}}, "_error": {"code": 422, "message": "Insertion failure: 1 document(s) contain(s) error(s)"}}

最佳答案

这是一个实际问题,感谢您报告。它已在 v0.8.1.dev0 中修复。

感谢报告!

关于python - 嵌套字典字段中的前夕 0.8 `allow_unknown`,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50767904/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com