Articles

Cum se utilizează MongoDB cu nod.js

Bootcamp-ul JavaScript cu stivă completă din 2021 este acum deschis pentru înscrieri!

dacă nu sunteți familiarizat cu MongoDB verifica ghidul nostru cu privire la elementele de bază și cu privire la modul de instalare și de a folosi:)

vom folosi Oficialmongodb pachetul npm. Dacă aveți deja un nod.la care lucrați, instalați-l folosind

npm install mongodb

dacă începeți de la zero, creați un folder nou cu terminalul dvs. și rulați npm init -y pentru a porni un nou nod.proiect js, apoi executați comanda npm install mongodb.

conectarea la MongoDB

aveți nevoie demongodb pachet și veți obține obiectul MongoClient de la ea.

const mongo = require('mongodb').MongoClient

creați o adresă URL către serverul MongoDB. Dacă utilizați MongoDB local, URL-ul va fi ceva de genul mongodb://localhost:27017, deoarece 27017 este portul implicit.

const url = 'mongodb://localhost:27017'

apoi utilizați metoda mongo.connect() pentru a obține referința la clientul de instanță MongoDB:

mongo.connect(url, { useNewUrlParser: true, useUnifiedTopology: true }, (err, client) => { if (err) { console.error(err) return } //...})

acum Puteți selecta o bază de date utilizând metoda client.db() :

const db = client.db('kennel')

creați și obțineți o colecție

puteți obține o colecție utilizând metodadb.collection(). Dacă colecția nu există încă, este creată.

const collection = db.collection('dogs')

introduceți date într-o colecție un Document

adăugați la aplicație.js următoarea funcție care utilizează insertOne() metodă pentru a adăuga un obiectdogs colecție.

collection.insertOne({name: 'Roger'}, (err, result) => {})

puteți adăuga mai multe elemente folosind insertMany(), trecând un tablou ca prim parametru:

collection.insertMany(, (err, result) => {})

găsiți toate documentele

utilizați metoda find()din colecție pentru a obține toate documentele adăugate la colecție:

collection.find().toArray((err, items) => { console.log(items)})

găsiți un document specific

treceți un obiect la find() metoda de filtrare a colecției pe baza a ceea ce aveți nevoie pentru a prelua:

collection.find({name: 'Togo'}).toArray((err, items) => { console.log(items)})

dacă știți că veți obține un element, puteți sări peste toArray() conversia cursorului apelând findOne():

collection.findOne({name: 'Togo'}, (err, item) => { console.log(item)})

actualizați un document existent

utilizați metoda updateOne() pentru a actualiza un document:

collection.updateOne({name: 'Togo'}, {'$set': {'name': 'Togo2'}}, (err, item) => { console.log(item)})

ștergeți un document

utilizați metoda deleteOne() pentru a șterge un document:

collection.deleteOne({name: 'Togo'}, (err, item) => { console.log(item)})

închiderea conexiunii

odată ce ați terminat cu operațiunile, puteți apela metoda close() pe obiectul client:

client.close()

utilizați promisiuni sau asincron/așteaptă

am postat toate aceste exemple folosind sintaxa de apel invers. Acest API acceptă promisiuni (și asincron/așteaptă), de asemenea.

de exemplu, acest

collection.findOne({name: 'Togo'}, (err, item) => { console.log(item)})

poate fi folosit cu promisiuni:

collection.findOne({name: 'Togo'}) .then(item => { console.log(item) }) .catch(err => { console.error(err) })

sau asincron/așteaptă:

const find = async () => { try { const item = await collection.findOne({name: 'Togo'}) } catch(err => { console.error(err) })}find()

descărcați nodul meu gratuit.JS manual

2021 JavaScript Full-Stack Bootcamp este acum deschis pentru înscrieri până marțea viitoare! Nu ratați această oportunitate, înscrieți-vă astăzi!

mai multe tutoriale nod:

  • nodul.JS runtime V8 lista de opțiuni
  • cum se imprimă o pânză la o adresă URL de date
  • cum se utilizează MongoDB cu nod.js
  • Ghidul Pug
  • instalați o versiune mai veche a unui pachet npm
  • cum se determină dacă o dată este astăzi în JavaScript
  • cum se scrie un fișier CSV cu nod.js
  • statistici de fișiere nod
  • parsarea JSON cu nod.js