Imagine the following schema:
const GroupSchema = new Schema(
{
name: { type: String },
description: { type: String },
admin: { type: String },
members: [{ user: { type: Schema.Types.ObjectId, ref: "User" } }],
}
);
I'm trying to select and populate 10 items of the members array without returning other fields like this:
[
{
user: {
name: "Alice",
username: "alice"
}
},
{
user: {
name: "Bob",
username: "bob"
}
},
{
user: {
name: "Jack",
username: "jack"
}
},
{
user: {
name: "Alex",
username: "alex"
}
},
]
I've already tried:
communityModel
.find()
.slice("members", 10)
.populate("members.user", "name username");
but it returns other fields of the group model like admin and description. I also tried .select('members') but this one returns the entire array of members.