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

Mongoose:porównania identyfikatorów obiektów kończą się niepowodzeniem

Prosty == (lub === ) porównanie spowoduje porównanie dwóch obiektów według odniesienia, a nie wartości. Tak więc zostanie to ocenione jako prawda tylko wtedy, gdy oba odwołują się do tej samej instancji.

Zamiast tego powinieneś używać equals metoda ObjectID aby porównać ich wartości:

story._id.equals(offref.ref)

Jak zauważa @bendytree w komentarzach, jeśli którakolwiek wartość może być null (i chcesz, aby wartości null były porównywane jako równe), możesz zamiast tego użyć następującego:

String(story._id) === String(offref.ref)


  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Wdrażanie i konserwacja MongoDB przy użyciu Ansible

  2. Lista indeksów w MongoDB?

  3. Elasticsearch vs. MongoDB do aplikacji filtrującej

  4. Zapytanie Node mongoose find w pętli nie działa

  5. Jaki jest czysty sposób na zatrzymanie Mongod w systemie Mac OS X?