Node.js   发布时间:2022-04-24  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了node.js – 如何处理mongodb“模式”生产中的变化大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我使用 mongodb node.js mongoose.js ORM后端.

让我说我有一些嵌套数组的对象没有_id字段

@H_868_9@mongoose.scheR_274_11845@a({ nested: [{ _id: false,prop: 'String' }] })

然后我想要将_id字段添加到所有的嵌套对象,所以mongoose模式将是

@H_868_9@mongoose.scheR_274_11845@a({ nested: [{ prop: 'String' }] })

那么我应该运行一些脚本来修改生产DB,对吧?处理这种变化的最好办法是什么?哪个工具(或方法)最适合用来实施这个变更?

解决方法

无模式数据库一个显着优点是您不必使用新的架构布局更新整个数据库.如果数据库中的某些文档没有特定的信息,那么你的代码可以做相应的事情,或者选择现在对该记录做任何事情.

一个选择是根据需要懒惰地更新文档 – 只有当它们再次被查看时.在这种情况下,您可能会选择具有每个记录/文档版本的标志 – 最初可能甚至不会出现(因此表示“版本0”).即使这是可选的.相反,您的数据库访问代码查找所需的数据,如果它不存在,因为它是新的信息,在代码更新后添加,那么它将尽可能填写结果.

对于您的示例,将_id:false转换为标准MongoId字段,当代码被读取(或更新后写入),并且_id:false当前设置,然后进行更改并写入它只有当它是绝对的需要.

大佬总结

以上是大佬教程为你收集整理的node.js – 如何处理mongodb“模式”生产中的变化全部内容,希望文章能够帮你解决node.js – 如何处理mongodb“模式”生产中的变化所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。