javascript - 如何更新/删除 mongo db 中嵌入数组中的文档?
问题描述
例如,我的数据有一个树状结构,如下所示:
private bookshelf: any = [
{
id: '1',
name: 'Im Westen nichts Neues',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://img.yakaboo.ua/media/catalog/product/cache/1/image/398x565/234c7c011ba026e66d29567e1be1d1f7/7/4/74431_60714327.jpg',
},
{
id: '2',
name: 'Der Funke Leben',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://images-na.ssl-images-amazon.com/images/I/71-dnZuZ0pL.jpg',
},
{
id: '3',
name: 'Books',
isDeletable: true,
includedFiles: [
{
id: '4',
name: 'Der Funke Leben',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://images-na.ssl-images-amazon.com/images/I/71-dnZuZ0pL.jpg',
},
],
includedFolders: [
{
id: '5',
name: 'Thrillers',
isDeletable: true,
includedFiles: [
{
id: '6',
name: 'Der Funke Leben',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://images-na.ssl-images-amazon.com/images/I/71-dnZuZ0pL.jpg',
},
{
id: '7',
name: 'Der Funke Leben',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://images-na.ssl-images-amazon.com/images/I/71-dnZuZ0pL.jpg',
},
{
id: '8',
name: 'Der Funke Leben',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://images-na.ssl-images-amazon.com/images/I/71-dnZuZ0pL.jpg',
},
{
id: '9',
name: 'Der Funke Leben',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://images-na.ssl-images-amazon.com/images/I/71-dnZuZ0pL.jpg',
},
],
includedFolders: [
{
id: '10',
name: '2007',
isDeletable: true,
includedFiles: [
{
id: '11',
name: 'Der Funke Leben',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://images-na.ssl-images-amazon.com/images/I/71-dnZuZ0pL.jpg',
},
{
id: '12',
name: 'Der Funke Leben',
description: 'The book by author Eirch Maria Remarque',
imageLink:
'https://images-na.ssl-images-amazon.com/images/I/71-dnZuZ0pL.jpg',
},
],
includedFolders: [],
},
],
},
],
},
];
所以有两种类型的文档:文件,这是一个单一的实体和文件夹,可以包含多个实体,如文件和其他文件夹,反过来,也可能包含一些数据。我是否需要删除/更新某些嵌入式实体,例如文件或文件夹,我将如何处理?我不能只做,Folder.findById 然后 updateOne。
解决方案
推荐阅读
- javascript - 如何将单个 p5.js 草图渲染到多个 div
- python - 将结构的字符串表示格式化为python字典
- amazon-web-services - Cloudformation DynamoDB-API 网关代理
- windows - 使用解析字符串重命名批处理脚本中的文件
- python - 通过声音相似度确定弦之间的距离
- ios - 如何更改 STPPaymentOptionsViewController 和 STPAddCardViewController 中 barButtonItems 的色调颜色?
- mediawiki - 在 ubuntu mate 上正确备份和恢复 mediawiki
- reactjs - 在全局函数中调用useDispatch时挂钩调用无效?
- reactjs - 使用 React 选择库选择组件时出错:无效的钩子调用
- python - 如何在多个 Pandas 数据帧上并行化 for 循环?