Hoe MongoDB te gebruiken met Node.js
De 2021 JavaScript Full-Stack Bootcamp is nu OPEN voor aanmeldingen!
Als u niet bekend bent met MongoDB, raadpleeg dan onze handleiding over de basis en hoe het te installeren en te gebruiken 🙂
we gebruiken het officiële mongodb
npm-pakket. Als je al een knoop hebt.js-project waaraan u werkt, Installeer het met
npm install mongodb
Als u vanaf nul start, maak dan een nieuwe map aan met uw terminal en voer npm init -y
uit om een nieuw knooppunt op te starten.js project, en voer dan het npm install mongodb
commando uit.
verbinden met MongoDB
u hebt het mongodb
pakket nodig en u krijgt het MongoClient object ervan.
const mongo = require('mongodb').MongoClient
Maak een URL aan naar de MongoDB-server. Als u MongoDB lokaal gebruikt, zal de URL iets zijn als mongodb://localhost:27017
, aangezien 27017
de standaardpoort is.
const url = 'mongodb://localhost:27017'
Vervolgens met behulp van de mongo.connect()
methode om de verwijzing naar de MongoDB aanleg opdrachtgever:
mongo.connect(url, { useNewUrlParser: true, useUnifiedTopology: true }, (err, client) => { if (err) { console.error(err) return } //...})
Nu kunt u een database met gebruik van het client.db()
methode:
const db = client.db('kennel')
een verzameling aanmaken en ophalen
u kunt een verzameling verkrijgen met behulp van de methode db.collection()
. Als de collectie nog niet bestaat, wordt ze gemaakt.
const collection = db.collection('dogs')
gegevens in een verzameling invoegen een Document
toevoegen aan app.js de volgende functie die de insertOne()
methode gebruikt om een object toe te voegen dogs
collectie.
collection.insertOne({name: 'Roger'}, (err, result) => {})
U kunt meerdere items toevoegen met behulp van insertMany()
, het doorgeven van een array als de eerste parameter:
collection.insertMany(, (err, result) => {})
Vind alle documenten
Gebruik de find()
methode op de collectie te krijgen van alle documenten toegevoegd aan de collectie:
collection.find().toArray((err, items) => { console.log(items)})
Vind een specifiek document
een object doorgeeft aan de find()
methode voor het filteren van de collectie op basis van wat je nodig hebt op te halen:
collection.find({name: 'Togo'}).toArray((err, items) => { console.log(items)})
Als u weet dat u gaat krijgen van een element, kunt u de toArray()
conversie van de cursor door te bellen findOne()
:
collection.findOne({name: 'Togo'}, (err, item) => { console.log(item)})
Bijwerken van een bestaand document
Gebruik de updateOne()
methode voor het bijwerken van een document:
collection.updateOne({name: 'Togo'}, {'$set': {'name': 'Togo2'}}, (err, item) => { console.log(item)})
Verwijderen van een document
Gebruik de deleteOne()
methode voor het verwijderen van een document:
collection.deleteOne({name: 'Togo'}, (err, item) => { console.log(item)})
Sluiten
als je Eenmaal klaar bent met de werkzaamheden, kunt u bellen met de close()
methode op het client-object:
client.close()
gebruik promises of async/wait
Ik heb al deze voorbeelden gepost met behulp van de callback syntaxis. Deze API ondersteunt ook promises (en async/await).
voorbeeld
collection.findOne({name: 'Togo'}, (err, item) => { console.log(item)})
Kan worden gebruikt met beloften:
collection.findOne({name: 'Togo'}) .then(item => { console.log(item) }) .catch(err => { console.error(err) })
of async/wachten:
const find = async () => { try { const item = await collection.findOne({name: 'Togo'}) } catch(err => { console.error(err) })}find()
Download mijn gratis Knooppunt.js Handbook
De 2021 JavaScript Full-Stack Bootcamp is nu OPEN voor aanmeldingen tot volgende week dinsdag! Mis deze kans niet, meld je vandaag nog aan!
meer knooppunthandleidingen:
- het knooppunt.js runtime V8 options list
- Hoe print je een canvas naar een data URL
- Hoe gebruik je MongoDB met Node.js
- de Pug-gids
- Installeer een oudere versie van een NPM-pakket
- Hoe bepaal je of een datum vandaag is in JavaScript
- Hoe schrijf je een CSV-bestand met Node.js
- node bestand statistieken
- Parsing JSON met Node.js
Leave a Reply