sql >> Database teknologi >  >> NoSQL >> MongoDB

Understøtter Moongoose 3.8.8 $position operator?

Dette betyder faktisk ikke noget og betyder aldrig noget for nogen "ramme"-implementering, og jeg har ikke noget imod at forklare hvorfor.

Hvert enkelt "framework" (såsom Mongoose, Mongoid, Doctrine, MongoEngine, etc, etc, etc) er alle grundlæggende bygget på en grundlæggende "driver"-implementering, der i de fleste tilfælde er blevet udviklet af MongoDB-personalet selv. Så den grundlæggende funktionalitet er der altid, selvom du skal "dykke" ned til et niveau for at bruge de "native" metoder.

Så her ville være det oprindelige brugseksempel i dette tilfælde:

List.collection.update(
{},
{ "$push": {
    "list": {
      "$each": [ 1, 2, 3 ],
      "$position": 0 }
    }
},function(err,NumAffected) {
  console.log("done");

});

Bemærk "indsamlingsmetoden" brugt fra modellen, som får de "rå" samlingsdetaljer fra chaufføren. Så du bruger dens metode og ikke en "indpakket" metode, der muligvis udfører yderligere behandling.

Den næste og mest grundlæggende årsag er, hvis du ikke kan finde metoden og anvendelsen af ​​de operatører, du har brug for, her er et simpelt faktum.

Hver enkelt operation, som bruges af metoderne i hver ramme og grundlæggende drivermetode, er i det væsentlige et kald til "runCommand"-metoden i den grundlæggende API. Så da det grundlæggende opkald er tilgængeligt overalt (i en eller anden form, fordi det skal være ), så kan du gøre alt, hvad du finder annonceret på MongoDB-webstedet med enhver sprogimplementering på enhver ramme.

Men det korte opkald til netop din anmodning er, da dette faktisk ikke er en metode kalder, men er simpelthen en del af BSON-argumenterne, som de er sendt ind, så er der naturligvis ingen begrænsning af en bestemt sprogdriver til rent faktisk at bruge dette.

Så du kan bruge disse nye argumenter uden selvfølgelig at opdatere til den seneste version. Men du vil sandsynligvis få nogle gode metoder til at gøre det, hvis du rent faktisk gør det.



  1. Ingen resultater med tekstsøgning MongoDB PHP

  2. Opdater flere dokumenter og returner alle opdaterede dokumenter

  3. Mongoid fejler på ruby ​​1.9.3

  4. MongoDB shell-kommandolinjegodkendelse mislykkes