arangojs:keepNull不是collection.save的选项吗?

问题描述 投票:0回答:1

我正在阅读arangojs的文档,并查看函数collection.update(),keepNull是可以添加的选项之一。 https://github.com/arangodb/arangojs/blob/master/docs/Drivers/JS/Reference/Collection/DocumentManipulation.md

[使用相同的文档阅读有关功能collection.save()https://github.com/arangodb/arangojs/blob/master/docs/Drivers/JS/Reference/Collection/DocumentCollection.md)的信息时,没有找到这样的选项。为什么?我是否首先需要拥有一个原始文件,然后使用keepNull:false更新该文件,然后才能从任何空值键中清除我的文档?还是在文档中缺少?我认为这是正确的,因为我还没有使用collection.save我自己将keepNull设置为false。

javascript arangodb arangojs
1个回答
0
投票

驱动程序将查询选项移交给服务器,所以这是要查看的相关文档:

https://www.arangodb.com/docs/stable/http/document-working-with-documents.html#create-document

创建文档时,API不支持keepNull作为选项。它仅可用于UPDATE / REPLACE查询以标记要删除的属性。因此,这取决于您在客户端上执行此操作。您仍然可以打开功能请求。

顺便说一句。在AQL中,UPDATE doc WITH {} OPTIONS { keepNull: false }不会删除任何具有null值的属性!它仅删除在null部分中显式设置为WITH {}的属性。这也可能适用于驱动程序。

© www.soinside.com 2019 - 2024. All rights reserved.