我目前正在学习MongoDB,为什么我们使用.populate()
。 .populate()
和.virtual()
之间有什么区别?
有谁能告诉我他们的差异以及何时应该使用另一个?
答案 0 :(得分:2)
两者都有不同的用途,不能替代其他目的。
虚拟:如果您需要可以获取和设置的属性,但这些属性本身不会持久保存到mongodb,则虚拟属性是您的Mongoose功能。记住,只有非虚拟属性才能作为一部分工作查询和字段选择。See Virtual
填充: ObjectIds可以引用我们数据库中集合中的另一个文档,并在查询时填充()d。它会为您提供DBRef之类的行为。 See Populate