【问题标题】:MongoDB - Update subdocuments using javascriptMongoDB - 使用 javascript 更新子文档
【发布时间】:2019-03-04 15:17:51
【问题描述】:

apps 集合中的每个文档都包含一个用户子集合。现在,我需要使用 JavaScript 为 apps 集合更新每个应用程序的单个用户。我不能为此定期调用update(),因为插入的数据将使用存储在应用程序文档中的公钥进行加密。因此写入用户子文档的数据取决于它所包含的应用程序文档。我需要做的伪代码:

foreach app in apps:
    app.users.$.encryptedData = encrypt(data, app.publicKey)

一种方法是找到所有应用程序,然后使用forEach() 更新每个应用程序。但是,这对我来说似乎效率很低,因为必须在数据库中找到所有应用程序文档两次,一次收集所有文件,另一次更新每个文档。必须有更有效的方法。

【问题讨论】:

标签: arrays database mongodb subdocument


【解决方案1】:

简短的回答是不,您不能使用该文档中的值更新 mongoDB 中的文档。

看看 https://stackoverflow.com/a/37280419/5293110 除了自己进行迭代之外的其他想法。

【讨论】:

    猜你喜欢
    • 2011-08-04
    • 2016-11-04
    • 2019-05-25
    • 2016-11-23
    • 2017-08-15
    • 2014-09-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多