Arangodb ArangoJS collection.save()的返回值是多少?

Arangodb ArangoJS collection.save()的返回值是多少?,arangodb,arangojs,Arangodb,Arangojs,文档位于此处: 我看到了collection.replace()和collection.update()的文档,但没有看到collection.save()的文档。我知道save函数存在,因为我正在使用它。但是它没有返回预期值,我想参考文档 我的具体问题是,我想将一个文档保存到ArangoDB数据库中,然后完整地取回保存的文档。以下是我目前掌握的情况: async createDocument(collectionName, data) { try { const co

文档位于此处:

我看到了
collection.replace()
collection.update()
的文档,但没有看到
collection.save()
的文档。我知道save函数存在,因为我正在使用它。但是它没有返回预期值,我想参考文档

我的具体问题是,我想将一个文档保存到ArangoDB数据库中,然后完整地取回保存的文档。以下是我目前掌握的情况:

  async createDocument(collectionName, data) {
    try {
      const collection = this.db.collection(collectionName);
      return collection.save(data); //I want to return the saved document
    } catch(err) {
      console.log(err.message, "saving failed")
    }
  }

保存方法的文档可在文档集合下找到:

你想要的答案是:

返回包含文档元数据的对象

我承认这不是很详细。它返回的是系统属性
\u id
\u key
\u rev
。如果使用
\u from
\u to
属性保存边缘,则它们不会作为元数据返回,也不会作为任何用户属性返回,即使它们的名称以下划线开头

如果希望返回完整文档,请设置选项
returnNew

collection.save(data, { returnNew: true} );
如果设置为true,则在结果中的属性new下额外返回完整的新文档

结果如下所示:

{
  "_id": "coll/123",
  "_key": "123",
  "_rev": "_YDWaEaa--B",
  "new": {
    "_id": "coll/123",
    "_key": "123",
    "_rev": "_YDWaEaa--B",
    "foo": "bar"
  }
}

非常感谢。我不确定我是如何得到V3.4.1文档的,但有趣的是collection.save()方法不是3.4.1文档的一部分。无论如何,你的解释比文档要好得多。你发布的链接指向相同的文档版本,但指向不同的页面(文档操作与文档收集相反)。我认为这些文档有点混乱的原因是它们似乎遵循了它的实现方式。由于“继承”,您可以在一个页面中找到部分描述的方法,但在另一个页面中找到其他方法。从用户的角度来看,这使得找到正确的页面变得相当复杂。