MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

Czy Moongoose 3.8.8 obsługuje operator pozycji $?

To właściwie nie ma znaczenia i nigdy nie ma znaczenia w przypadku implementacji „ramowej” i nie mam nic przeciwko wyjaśnianiu dlaczego.

Każda pojedyncza "framework" (taka jak Mongoose, Mongoid, Doctrine, MongoEngine, itd., itd., itd.) jest zasadniczo zbudowana na podstawowej implementacji "sterownika", która w większości przypadków została opracowana przez samych pracowników MongoDB. Tak więc podstawowa funkcjonalność jest zawsze dostępna, nawet jeśli musisz „zagłębić się” w dół, aby użyć tych „natywnych” metod.

Oto przykład natywnego użycia w tym przypadku:

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

});

Zwróć uwagę na metodę „zbierania” zastosowaną w modelu, która polega na pobieraniu „surowych” szczegółów kolekcji ze sterownika. Więc używasz tej metody, a nie jakiejś „opakowanej” metody, która może wykonywać dodatkowe przetwarzanie.

Następnym i najbardziej podstawowym powodem jest to, że jeśli nie możesz znaleźć metody i zastosowania operatorów, których potrzebujesz, jest to prosty fakt.

Każda operacja używana przez metody w każdej strukturze i podstawowa metoda sterownika jest zasadniczo wywołaniem metody „runCommand” w podstawowym interfejsie API. Skoro więc to podstawowe wywołanie jest dostępne wszędzie (w takiej czy innej formie, bo tak musi być ), możesz zrobić wszystko, co jest reklamowane w witrynie MongoDB z każdą implementacją języka na dowolnym ramy.

Ale krótkie wezwanie do twojej konkretnej prośby jest takie, ponieważ w rzeczywistości nie jest to metoda call, ale jest po prostu częścią przekazanych argumentów BSON, wtedy oczywiście nie ma ograniczeń ze strony konkretnego sterownika języka, aby faktycznie z niego korzystać.

Możesz więc użyć tych nowych argumentów, oczywiście bez aktualizacji do najnowszej wersji. Ale prawdopodobnie otrzymasz kilka fajnych metod, jeśli faktycznie to zrobisz.



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Jak mogę zwrócić tylko NIEKTÓRE pola ($projekt) z agregacji Mongodb, jednocześnie używając $match, $lookup AND $filter

  2. Błąd Mongo podczas używania agregacji:sortowanie przekroczyło limit pamięci

  3. Co oznacza dokumentacja MongoDB, gdy mówi, że identyfikatory ObjectID są prawdopodobnie unikalne?

  4. Jak usunąć duplikaty na podstawie klucza w Mongodb?

  5. Lista indeksów w MongoDB?