我正在嘗試撰寫一個貓鼬查詢,它允許我找到一個包含填充陣列的檔案,其中陣列的名稱存盤在一個變數中。我嘗試了各種語法,使用 [方括號] 等,我已經搜索但找不到任何有效的方法。
var arrayName = req.params.abbreviation "Films";
console.log(arrayName); //documentaryFilms
FilmModel.findOne({
$and: [
{ incomplete: false },
{ [arrayName].[0]: { $exists: true } }
...
有誰知道如何做到這一點?謝謝
uj5u.com熱心網友回復:
使用$size運算子獲取陣列的長度。
FilmModel.aggregate(
[
{
$addFields: {
"size_of_array": {
$size: "$abcFilms"
}
}
}
{
$match: { "size_of_array": { $gt: 0 } }
}
])
如果要根據n陣列中具有索引的元素進行過濾,請查看$arrayElemAt運算子。
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/455708.html
