MongoDB
 sql >> Base de Dados >  >> NoSQL >> MongoDB

TypeError:Não é possível usar o operador 'in' para pesquisar '_id' no masculino


Você está recebendo este erro porque não está construindo sua instância de modelo corretamente. Ele espera um hash de propriedades e seus valores correspondentes, mas o parâmetro que você está fornecendo é uma string. De seu código acima, req.body.user é um hash {sex: "male"} enquanto req.body.user.sex é apenas uma string "male". Você pode fazer;
user = new User({sex: "male"});

Mas você não pode fazer;
user = new User("male");

Isso explica por que sua primeira instância "User" com o parâmetro req.body.user funciona, mas falha com o parâmetro req.body.user.sex. Ainda não tenho certeza do que você está tentando alcançar com var sex = new User(req.body.user.sex); Deseja criar outra instância de modelo de usuário? ou um modelo de sexo associado?