1
resposta

busca relativa

Na aula foi usado o método find(), para fazer uma busca filtrada, mais no meu caso a editora ela não é uma string como valor, mais sim um objeto, que eu o relacionei com uma coleção editora:

import mongoose from "mongoose";

const editoraSchema = mongoose.Schema(
    {
        id: {type: String},
        nome: {type: String, required: true}
    }
)

const editoras = mongoose.model("editoras", editoraSchema);

export default editoras;
import mongoose from "mongoose";

const livroSchema = new mongoose.Schema(
    {
        id: {type: String},
        titulo: {type: String, required: true},
        autor: {type: mongoose.Schema.Types.ObjectId, ref: "autores", required: true},
        editora: {type: mongoose.Schema.Types.ObjectId, ref: "editoras", required: true},
        numeroPaginas: {type: Number}
    }
);

const livros = mongoose.model("livros", livroSchema);

export default livros;

Como que eu faço para listar só os livros aonde a sua propriedade nome seja o valor desejado?

1 resposta

Olá Walter! No caso, quando estamos trabalhando com coleções associadas, a busca deve ser feita através do id do documento. Para buscas por string apenas no caso em que foi feito no vídeo, quando o valor do campo é um dado em si (no caso, do tipo string).

Espero ter ajudado! Bons estudos ;)

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software