Hvordan bruke MongoDB Med Node.js
2021 JavaScript Full-Stack Bootcamp ER NÅ ÅPEN for REGISTRERINGER!
hvis Du ikke er kjent Med MongoDB, sjekk vår guide på grunnleggende og hvordan du installerer og bruker den 🙂
Vi bruker den offisielle mongodb
npm-pakken. Hvis du allerede har En Node.js project du jobber med, installer det med
npm install mongodb
hvis du starter fra bunnen av, opprett en ny mappe med terminalen din og kjør npm init -y
for å starte en ny Node.js prosjekt, og kjør deretter kommandoennpm install mongodb
.
Koble Til MongoDB
du trengermongodb
pakken og Du får MongoClient-objektet fra den.
const mongo = require('mongodb').MongoClient
Opprett EN URL til MongoDB-serveren. Hvis Du bruker MongoDB lokalt, VIL NETTADRESSEN være noe som mongodb://localhost:27017
, da 27017
er standardporten.
const url = 'mongodb://localhost:27017'
bruk deretter mongo.connect()
metoden for å få referansen til MongoDB-instansklienten:
mongo.connect(url, { useNewUrlParser: true, useUnifiedTopology: true }, (err, client) => { if (err) { console.error(err) return } //...})
nå kan du velge en database ved hjelp av client.db()
– metoden:
const db = client.db('kennel')
Opprett og få en samling
du kan få en samling ved å brukedb.collection()
metoden. Hvis samlingen ikke eksisterer ennå, er den opprettet.
const collection = db.collection('dogs')
Sett inn data i en samling Et Dokument
Legg til app.js følgende funksjon som bruker insertOne()
metoden for å legge til et objekt dogs
samling.
collection.insertOne({name: 'Roger'}, (err, result) => {})
insertMany()
, passerer en matrise som den første parameteren:
collection.insertMany(, (err, result) => {})
finn alle dokumenter
brukfind()
metoden på samlingen for å få alle dokumentene lagt til samlingen:
collection.find().toArray((err, items) => { console.log(items)})
Finn et bestemt dokument
Pass et objekt til find()
metode for å filtrere samlingen basert på hva du trenger å hente:
collection.find({name: 'Togo'}).toArray((err, items) => { console.log(items)})
hvis du vet at du skal få ett element, kan du hoppe over toArray()
konvertering av markøren ved å ringe findOne()
:
collection.findOne({name: 'Togo'}, (err, item) => { console.log(item)})
Oppdater et eksisterende dokument
Bruk updateOne()
metode for å oppdatere et dokument:
collection.updateOne({name: 'Togo'}, {'$set': {'name': 'Togo2'}}, (err, item) => { console.log(item)})
slett et dokument
brukdeleteOne()
metode for å slette et dokument:
collection.deleteOne({name: 'Togo'}, (err, item) => { console.log(item)})
lukke tilkoblingen
når du er ferdig med operasjonene kan du ringeclose()
metode På Klientobjektet:
client.close()
Bruk løfter eller async / await
jeg postet alle disse eksemplene ved hjelp av tilbakeringingssyntaksen. DENNE API støtter løfter (og async / await) også.
for eksempel dette
collection.findOne({name: 'Togo'}, (err, item) => { console.log(item)})
kan brukes med løfter:
collection.findOne({name: 'Togo'}) .then(item => { console.log(item) }) .catch(err => { console.error(err) })
eller async/avvente:
const find = async () => { try { const item = await collection.findOne({name: 'Togo'}) } catch(err => { console.error(err) })}find()
last ned min gratis node.js Handbook
2021 JavaScript Full-Stack Bootcamp ER NÅ ÅPEN FOR REGISTRERINGER TIL NESTE TIRSDAG! Ikke gå glipp av denne muligheten, registrer DEG I DAG!
Flere node guider:
- Noden.js Runtime v8 options list
- hvordan skrive ut et lerret til en DATA URL
- Hvordan bruke MongoDB Med Node.Js
- Pug Guide
- Installer en eldre versjon av en npm pakke
- hvordan finne ut om en dato er i Dag I JavaScript
- hvordan skrive EN CSV-fil Med Node.js
- Node fil statistikk
- Parsing JSON Med Node.js
Leave a Reply