2
respostas

Objeto no mongoose.model

Olá, Bom dia! Alguém poderia me ajudar como eu declaro um Objeto dentro de um .model ? Pois, no momento que abro o Insomnia e escrevo o JSON no Body, a preview não aparece as informações do "address"Insira aqui a descrição dessa imagem para ajudar na acessibilidade

2 respostas

Olá, João! Tudo bem com você?

O método model que você está utilizando é responsável por realizar os métodos diretamente no banco do MongoDB, contudo, a compilação desse "modelo" é feita a partir da passagem de um "Schema" de definições.

De forma resumida, o método model receberá como parâmetro de entrada um nome para o modelo e um objeto do tipo "Schema" que conterá todas as definições dos atributos e seus relacionamentos com outras tabelas.

Segue um exemplo de como ficaria o Schema do modelo que você compartilhou no print:

const clientSchema = mongoose.Schema (
    name: {
        type: String
    },
    age: {
        type: Number
    },
    address: {
        city: {type: String},
        state: {type: String},
        road: {type: String},
        neighborhood: {type: String},
        apartment: Boolean
    }
);

const client = mongoose.model("client", clientSchema);

O exemplo é bem simples, não apresenta nenhum tratamento nos atributos. Para mais informações de como melhorar ou entender como funciona os métodos comentados, recomendo que leia a documentação oficial do Mongoose, ela é bem rica. Seguem alguns links que imagino que possam ser uteis:

Espero ter ajudado e bons estudos!

Caso este post tenha lhe ajudado, por favor, marcar como solucionado ✓.

Muito obrigado! Salvou