MongoDB - 使用 javascript 更新子文档
MongoDB - Update subdocuments using javascript
我的 apps
集合中的文档每个都包含一个用户子集合。现在,我需要使用 javascript 为 apps
集合给定一组 _id
来更新每个应用程序的单个用户。我不能为此使用对 update()
的常规调用,因为插入的数据将使用存储在应用程序文档中的 public 密钥进行加密。因此,写入用户子文档的数据取决于它所在的应用程序文档。我需要做的伪代码:
foreach app in apps:
app.users.$.encryptedData = encrypt(data, app.publicKey)
一种方法是找到所有应用程序,然后使用 forEach()
更新每个应用程序。然而,这对我来说似乎效率很低,因为所有应用程序文档都必须在数据库中找到两次,一次收集所有文档,然后另一次更新每个文档。必须有更有效的方法。
简短的回答是不,您不能使用 mongoDB 中的文档更新该文档中的值。
看看
除了自己进行迭代之外的其他想法。
我的 apps
集合中的文档每个都包含一个用户子集合。现在,我需要使用 javascript 为 apps
集合给定一组 _id
来更新每个应用程序的单个用户。我不能为此使用对 update()
的常规调用,因为插入的数据将使用存储在应用程序文档中的 public 密钥进行加密。因此,写入用户子文档的数据取决于它所在的应用程序文档。我需要做的伪代码:
foreach app in apps:
app.users.$.encryptedData = encrypt(data, app.publicKey)
一种方法是找到所有应用程序,然后使用 forEach()
更新每个应用程序。然而,这对我来说似乎效率很低,因为所有应用程序文档都必须在数据库中找到两次,一次收集所有文档,然后另一次更新每个文档。必须有更有效的方法。
简短的回答是不,您不能使用 mongoDB 中的文档更新该文档中的值。
看看 除了自己进行迭代之外的其他想法。