Agora que tivemos uma visão geral rápida de Mongoose ODM e
como Mangoose traz esquemas para estruturar os documentos que armazenamos em nosso MongoDB,
vamos ver como fazemos uso
do módulo nó Mongoose e, em seguida, incorporá-lo em nossa aplicação nó.
Em seguida, use Mangusto para se comunicar com o
nosso servidor MongoDB e, em seguida, armazenar e recuperar
documentos com informações de estrutura nos documentos.
Para começar este exercício,
vá para um local conveniente no seu computador.
Então, aqui estou eu na pasta Node JS onde eu tenho armazenado
todos os exemplos deste curso e, em seguida, eu vou
criar uma nova pasta chamada nó Mangusto.
Este é o lugar onde vamos criar o aplicativo nó usando Mangusto próximo.
No terminal ou na janela de comando,
mova para a pasta nó Mangoose e, em seguida, inicialize um aplicativo de nó lá.
Então, deixe-me digitar npm init e, em seguida,
inicializar o aplicativo nó e, em seguida, eu nomearia o aplicativo
como Node-mangoose eo ponto de entrada é index.js git histórico
, palavras-chave, autor e licença e vamos dizer ok.
Uma vez que seu arquivo de pacote de nó é criado,
abra o projeto no editor de texto de sua escolha.
Então, aqui eu tenho meu projeto aberto no Visual Studio.
Deixe-me ir para o arquivo package.json e, em seguida, adicionar
no script de inicialização e, em seguida, vamos
dizer iniciar índice nó como de costume sempre que começar com um novo aplicativo nó.
Então, indo para o terminal ou a janela de comando, vamos instalar Mangusto.
Então, no prompt, digite npm instalar Mangusto, salve.
Que no momento é Mangusto 5.1.7.
Então, estas são as versões que vou usar neste curso.
Em seguida, indo para o meu aplicativo no editor.
Deixe-me criar uma subpasta no projeto chamado como Modelos.
Então, é aqui que vou armazenar todos os modelos para a minha aplicação.
Na pasta models,
deixe-me criar um novo arquivo chamado dishes.js.
Então, aqui é onde eu vou criar o esquema e o modelo
para o meu documento de pratos que eu vou armazenar,
a coleção de pratos que armazena os documentos para cada prato.
Então, bem aqui, deixe-me primeiro importar Mangusto.
Então, vamos exigir Mangusto neste arquivo e, em seguida, dizer
esquema const é esquema Mangusto.
Em seguida, vamos criar o esquema aqui.
Então, vamos dizer const dishSchema novo Esquema.
Então, este é o lugar onde eu definir o esquema para o meu prato.
Dentro deste esquema, deixe-me definir os vários valores.
Então, eu vou dizer nome,
que é o tipo String.
Então, este é o tipo de esquema e, em seguida, este eu declararia como necessário.
Então, vou dizer que é verdade.
Então, cada documento terá o nome como um campo obrigatório lá e, em seguida, eu
também vou declarar isso como um significado único que
nenhum dois documentos deve ter o mesmo campo de nome lá dentro.
Então, esse é o primeiro campo do meu documento.
Em seguida, vamos também incluir outro campo chamado como, descrição.
A descrição é da cadeia de caracteres de tipo e true obrigatório.
Além disso, podemos ter Mangoose inserir automaticamente
carimbos de data/hora em nosso modelo.
Então, ali mesmo nós podemos apenas configurar os carimbos de tempo da bandeira: verdadeiro.
Então, isso adicionará automaticamente o criado em e atualizado em,
dois carimbos de data/hora em cada documento que é armazenado
em nosso aplicativo e atualizará automaticamente esses valores.
Sempre que atualizamos o documento e o criado em será
inicializado automaticamente quando o documento for o primeiro criador deste tempo.
Depois disso, diremos pratos var.
Então, dado o esquema,
agora vamos construir o modelo a partir deste esquema.
Então, vamos dizer modelo Mangusto e prato,
e isso vai ser usando o esquema prato que acabamos de declarar anteriormente.
Em seguida, vamos exportar
este modelo a partir deste arquivo aqui.
Então, vamos dizer pratos de exportação de módulos.
Então, agora nós construímos
o esquema Mangusto e o modelo correspondente e o modelo agora é exportado a partir daqui.
Então, isso pode ser importado em nosso aplicativo e usado.
Então, dentro da nossa pasta de projeto,
deixe-me criar um novo arquivo chamado index.js.
No arquivo index.js,
deixe-me primeiro exigir Mangusto,
e depois disso podemos dizer
const Pratos exigem modelos de pratos.
Porque nós já criamos o modelo de pratos
no arquivo de pratos modelos lá e, em seguida, estamos exigindo isso aqui.
Agora, para estabelecer a conexão com o servidor Mongo,
vamos dizer const URL mongodb.
Localhost 27017, Confusão.
Então, este banco de dados é aquele que nos conectaremos a partir do nosso aplicativo e
, em seguida, podemos estabelecer a conexão dizendo const connect Mongoose.
Mangusto suporta este método de conexão,
que leva a URL como o primeiro parâmetro.
Então, uma vez que tenhamos estabelecido isso,
então nós simplesmente dizemos conectar então.
Note que uma vez que já estamos usando promessas,
podemos apenas dizer conectar então e, em seguida, isso terá
uma função como o parâmetro
e dentro daqui podemos agora conectar ao banco de dados.
Então, agora, uma vez que esta conexão é estabelecida,
deixe-me fazer um log console
dizendo conectado corretamente ao servidor,
e aqui eu posso criar um novo prato dizendo var
novo prato e, em seguida, pratos e dentro aqui eu posso especificar
um documento então eu estou criando um novo prato deste tipo e então aqui Vou
especificar os dois campos que são obrigatórios.
Então eu vou dizer nome,
descrição e assim é assim que você criaria um novo prato e, em seguida, uma vez que criamos
um novo prato a partir do modelo, vamos simplesmente dizer novo prato salvar.
O método salvar fará com que este valor Dish para ser
salvo e, em seguida, como você espera vai retornar uma promessa e,
em seguida, aqui vamos obter o valor Dish como chamada de volta lá e, em seguida, eu
posso simplesmente registrar o valor Dish aqui e, em seguida, depois disso, vamos dizer
Pratos encontrar e assim vamos encontrar
todos os Pratos e, em seguida, dizer executivo.
O executivo irá garantir que isso é
executado e que ele irá retornar uma promessa e para que a promessa
será retornada para que ele possa então
encadear o método para os restantes.
Então você vê como eu estou usando promessas e, em seguida, eu estou invocando o método anterior para que este
encontre todos os pratos dentro do meu banco de dados,
na coleção Dishes e, em seguida, torná-lo disponível para mim.
Então, quando eu obter os pratos, em seguida, eu posso apenas console log os pratos apenas para ver o que é
devolvido e isso, obviamente, nesta fase deve
retornar este único prato que eu inseri na
minha coleção Distras e, em seguida, vamos dizer
retorno Pratos remover com
um objeto JavaScript vazio que irá remover todos os pratos
do banco de dados e retornar
conexão mangusto perto que fecha a conexão com o banco de dados.
E pegar qualquer erro neste momento.
Então, vamos usar a captura e, em seguida, o registro do console.
É isso. Então o que estamos fazendo aqui é que estamos criando o novo este prato e, em seguida, estamos
salvando o prato, em seguida, estamos encontrando todos os pratos da coleção.
É isso. Estamos usando promessas aqui,
então acorrentamos todas as covas aqui. É isso.
Vamos salvar as alterações e, em seguida, ver este aplicativo em execução.
Vá para o terminal,
no prompt tipo npm start e você
verá que meu aplicativo nó é executado e, em seguida, ele mostra
, primeiro, que ele criou este prato particular.
Observe em particular, que esses dois campos,
atualizados e criados em,
esses dois carimbos de data/hora foram adicionados automaticamente
ao prato aqui e assim você pode ver que o criado em e
atualizado em timestamps são exatamente os mesmos no momento e, em
seguida, o ID também é adicionado automaticamente em.
Na próxima etapa, estamos imprimindo todos os Pratos que foram recuperados e assim você
pode ver que este único prato está na coleção,
coleção Pratos, e isso é o que é impresso na tela aqui.
Vamos agora inicializar o repositório Git e, em seguida, vamos configurar o arquivo gitignore got
para ir para o editor, em seguida, criamos o arquivo.gitignore e, em seguida, adicionar
módulos de nó para o arquivo gitignore e salvar as alterações e, em
seguida, voltar para o prompt deixe-me
digitar git status e vemos que
temos esses arquivos que não foram verificados em então vamos dizer
git add e, em seguida, git
commit a mensagem Mangusto Parte Um.
Com isso, completamos este exercício.
Neste exercício, vimos como é fácil configurar uma aplicação de nó com
mangusto e conectar-se ao nosso servidor MongoDB e, em seguida, interagir com ele.
Agora, uma vez que o mangusto constrói sobre o servidor
MongoDB, Mangusto pode acessar todos os vários métodos
que são suportados pelo driver MongoDB também.