[英]Mongoose find.where in a schema with an attribute of type ObjectId
我有這個模式:
用戶喜歡
const UserLikeSchema = Schema({
user: {
type: Schema.Types.ObjectId,
ref: "User",
required: [true, "User is required"],
},
game: {
type: Schema.Types.ObjectId,
ref: "Game",
required: [true, "Game is required"],
}
});
游戲
const GameSchema = Schema({
title: {
type: String,
required: [true, "Title is required"],
},
status: {
type: Boolean,
default: true,
},
});
我需要找到填充的 Game.status 為 true 的所有 UserLikes
我正在嘗試使用這樣的代碼
const games = await UserLike.find()
.populate("game")
.where("game.status")
.equals(true);
但我找不到解決方案:(
您應該按照 mongoose 文檔的指示嘗試使用匹配選項。
https://mongoosejs.com/docs/populate.html#query-conditions
查詢可能看起來像這樣:
UserLike.
find().
populate({
path: 'game',
match: { status: true },
}).
exec();
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.