$ne de la requête ne fonctionne pas avec la mangouste, mais travaillant dans mongoshell
Lorsque j'exécute cette mangouste requête
FinancedProject.find({_id:{$ne:fb.financedProjects.financedProjectId}).exec( callback);
où fb est un objet comme celui-ci
{
_id: ObjectId("54das4da9dsa9d4ad4a9");
name: "some",
financedProjects: [
{registry:"147", financedProjectId:ObjectId("13da4sd4sa48da4dsa")},
{registry:"189", financedProjectId:ObjectId("5d5asd5a4sd5ada5sd")}
]
{
le résultat n'est pas défini, et quand je l'exécuter dans le mongoshell les résultats sont attendus
- Est le résultat
undefined
ou un videarray
? - Indéfini, et si je l'ai mis sur la mangouste debug à true, il ne veut pas m'afficher la requête
- Si le résultat n'est pas défini, probablement, il y avait une erreur. Ce qui est dans le tre paramètre de la fonction de rappel?
Vous devez vous connecter pour publier un commentaire.
Parce que
financedProjects
est unarray
vous avez à l'adresse de l'élément avec[]
comme:EDIT:
mangouste ist JavaScript, donc il suit les règles de JavaScript.
fb.financedProjects
est unarray
. Donc, si vous utilisez l'expressionfb.financedProjects.financedProjectId
c'est évaluée àundefined
par l'interpréteur JavaScript, car il n'est pasfinancedProjectId
bien dans ce tableau (tableaux ont0
,1
,2
,3
,... en tant que propriétés). Donc, la mangouste est{ $ne: undefined }
et n'a aucune chance de reconnaître que vous avez voulu dire la propriétéfinancedProjectId
de la matrice éléments.À réaliser ce que vous voulez, vous pouvez faire ceci:
fb
de (la mangouste et de l'environnement). S'il vous plaît montrer plus de code.