我将如何选择猫鼬的许多对象?
How will I choose many objects with mongoose?
比如我有
[
{ name: "John" },
{ name: "Mike" },
{ name: "Homer" },
{ name: "Bart" },
{ name: "Dmitry" },
{ name: "Dan" }
]
如何用mongoose选择很多对象,如果我用.limit(2)
我会得到[{ name: "John" }, { name: "Mike" }]
,我需要选择[{ name: "Bart" }, { name: "Dmitry" }]
。在默认的 JS 中,这个方法看起来像 .slice(3,5)
。我将如何用猫鼬来做?
您可以在 mongodb 中使用 skip(3).limit(2)
实现此目的。
在 Mongoose 中,您可以使用 myModel.find({}, 'name', {skip: 3, limit: 2})
实现此目的,您只需在 find
的第三个参数中插入您想要的 skip
和 limit
的值即可。
这里是 documentation with an example of skip and here's a link 类似问题的更受欢迎的答案。
编辑:请注意,这是一个 short-sighted 解决方案,对于大型或不断变化的数据库,您应该使用其他解决方案。
您可以尝试这样的操作:
Model.find({name: {$in: ["Bart", "Dmitry"]}});
比如我有
[
{ name: "John" },
{ name: "Mike" },
{ name: "Homer" },
{ name: "Bart" },
{ name: "Dmitry" },
{ name: "Dan" }
]
如何用mongoose选择很多对象,如果我用.limit(2)
我会得到[{ name: "John" }, { name: "Mike" }]
,我需要选择[{ name: "Bart" }, { name: "Dmitry" }]
。在默认的 JS 中,这个方法看起来像 .slice(3,5)
。我将如何用猫鼬来做?
您可以在 mongodb 中使用 skip(3).limit(2)
实现此目的。
在 Mongoose 中,您可以使用 myModel.find({}, 'name', {skip: 3, limit: 2})
实现此目的,您只需在 find
的第三个参数中插入您想要的 skip
和 limit
的值即可。
这里是 documentation with an example of skip and here's a link 类似问题的更受欢迎的答案。
编辑:请注意,这是一个 short-sighted 解决方案,对于大型或不断变化的数据库,您应该使用其他解决方案。
您可以尝试这样的操作:
Model.find({name: {$in: ["Bart", "Dmitry"]}});