sql >> Databáze >  >> NoSQL >> MongoDB

TypeError:Nelze použít operátor 'in' k vyhledání '_id' v mužském jazyce

Tato chyba se zobrazuje, protože nevytváříte instanci modelu správně. Očekává hash vlastností a jejich odpovídající hodnoty, ale parametr, který poskytujete, je místo toho řetězec. Z vašeho výše uvedeného kódu je req.body.user hash {sex: "male"} zatímco req.body.user.sex je pouze řetězec "muž". Můžete to udělat;

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

Ale to nemůžete;

user = new User("male");

To vysvětluje, proč vaše první instance „User“ s parametrem req.body.user funguje, ale selhává s parametrem req.body.user.sex. Ještě si nejsem jistý, čeho se snažíte dosáhnout pomocí var sex = new User(req.body.user.sex); Chcete vytvořit další instanci uživatelského modelu? nebo přidružený sexuální model?




  1. Vložený dokument bez pole?

  2. Referenční data NoSql

  3. Proč můj skript Redis Lua nemůže atomicky aktualizovat klíče na různých uzlech Redis Cluster?

  4. získat hodnoty podle názvu klíče ovladač mongodb node.js