Olá, Estou com problemas para criar o objeto. Ele reporta a seguinte msg: "Cannot read property '_doc' of null - falha ao cadastrar livro"
o import foi feito de forma correta (com as {})
Você está vendo a versão anterior da nova experiência da Alura que estamos preparando para você. Em breve, ela ganha uma identidade visual novinha totalmente pensada em potencializar seus estudos!
Olá, Estou com problemas para criar o objeto. Ele reporta a seguinte msg: "Cannot read property '_doc' of null - falha ao cadastrar livro"
o import foi feito de forma correta (com as {})
Olá, Rafael! Tudo bem?
O erro "Cannot read property '_doc' of null" ocorre porque você está tentando acessar a propriedade "_doc" de uma variável que é nula (ou seja, não possui um valor válido). No seu código, esse erro está sendo gerado na linha onde você tenta acessar autorEncontrado._doc.
Imagino que a propriedade _doc foi chamada pelo autocomplete, já que o autor encontrado não deveria ter essa propriedade, então retire a mesma e tente rodar esse método novamente, deve solucionar o seu problema.
Caso não solucione, peço que compartilhe todo o seu projeto, via GitHub ou Drive do Google. Assim conseguirei testar o projeto e conseguirei encontrar o seu erro mais facilmente.
Espero ter ajudado e bons estudos!
Mesmo retirando o _doc não funcionou. Segue código no git para auxilio..
Opa, Rafael! Como vai?
Analisando o seu código percebi onde estava o seu problema, além do _doc que já comentei, no arquivo "livro.js" da pasta "models" o campo autor você passou como tipo o schema autorSchema, isso acaba sendo uma operação invalida e acaba ocasionando o erro.
Então para solucionar isso você deve alterar o arquivo, que comentei anteriormente, mais especificamente no campo autor passando o tipo corretamente. O schema corrigido ficará assim:
const livroSchema = new mongoose.Schema(
{
id: { type: mongoose.Schema.Types.ObjectId },
titulo: { type: String, required: true },
editora: { type: String },
preco: { type: Number },
pagina: { type: Number },
autor: { type: mongoose.Schema.Types.ObjectId, ref: 'autores', required: true}
},
{ versionKey: false }
);
Espero ter ajudado e bons estudos!