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

TypeError:nie można użyć operatora „in”, aby wyszukać „_id” w języku męskim

Otrzymujesz ten błąd, ponieważ nie tworzysz poprawnie instancji modelu. Oczekuje skrótu właściwości i odpowiadających im wartości, ale parametr, który podajesz, jest zamiast tego ciągiem.Z powyższego kodu req.body.user to skrót {sex: "male"} podczas gdy req.body.user.sex to po prostu ciąg "mężczyzna". Możesz to zrobić;

user = new User({sex: "male"});

Ale nie możesz tego zrobić;

user = new User("male");

To wyjaśnia, dlaczego twoja pierwsza instancja „User” z parametrem req.body.user działa, ale kończy się niepowodzeniem z parametrem req.body.user.sex. Nie jestem jeszcze pewien, co chcesz osiągnąć za pomocą var sex = new User(req.body.user.sex); Czy chcesz utworzyć kolejną instancję modelu użytkownika? lub powiązany model seksu?




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Zapytanie o lokalizacje w promieniu w MongoDB

  2. MongoDB Schema Design (tablica zagnieżdżona a oddzielna kolekcja)

  3. Dziwna odpowiedź podczas wyszukiwania dokumentów w MongoDB przy użyciu Mongoose w Node.js

  4. Jak zarejestrować się i wywołać schemat w manguście?

  5. Przegląd walidacji schematu MongoDB