Mongoose ist eine Bibliothek für Node.js, die es einfacher macht, mit MongoDB zu interagieren. CRUD steht für Create, Read, Update und Delete. Dies sind die vier grundlegenden Operationen, die in meisten persistenten Speichern durchgeführt werden können.
Im folgenden ist eine allgemeine Anleitung dafür, wie man jede dieser Operationen durchführt.
Voraussetzungen:
- Installiere Mongoose und MongoDB in deinem node.js-Projekt.
```bash
npm install mongoose
```
Verbindung:
Zuerst musst du eine Verbindung zu deiner MongoDB-Datenbank herstellen.
```javascript
const mongoose = require(‘mongoose’);
mongoose.connect(“mongodb://localhost:27017/testDB”, { useNewUrlParser: true, useUnifiedTopology: true });
```
Schema und Modell erstellen:
Mongoose verwendet Schemas, um eine Struktur für die Dokumente in einer Kollektion zu definieren und Modelle zu erstellen basierend auf diesen Schemas:
```javascript
const studentSchema = new mongoose.Schema({
name: String,
age: Number,
major: String,
});
const Student = mongoose.model(“Student”, studentSchema);
```
Create (Erstellen):
Um ein neues Dokument in einer Kollektion zu erstellen, verwenden wir die `save()`-Funktion.
```javascript
let student1 = new Student({
name: “John Doe”,
age: 22,
major: “Computer Science“
});
student1.save();
```
Read (Lesen):
Die `find()`, `findOne()`, und `findById()`-Funktionen können verwendet werden, um Dokumente zu lesen.
```javascript
// Lesen aller Studenten
Student.find((err, students) => {
if (err) console.log(err);
else console.log(students);
});
// Lesen eines spezifischen Studenten
Student.findOne({ name: “John Doe” }, (err, student) => {
if (err) console.log(err);
else console.log(student);
});
```
Update (Aktualisieren):
Die `updateOne()`, `updateMany()`, und `findByIdAndUpdate()`-Funktionen können verwendet werden, um Dokumente zu aktualisieren.
```javascript
// Aktualisieren eines spezifischen Studenten
Student.updateOne({ name: “John Doe” }, { major: “Physics” }, (err) => {
if (err) console.log(err);
else console.log(“Erfolgreich aktualisiert”);
});
```
Delete (Löschen):
Die `deleteOne()`, `deleteMany()`, und `findByIdAndDelete()`-Funktionen können verwendet werden, um Dokumente zu löschen.
```javascript
// Löschen eines spezifischen Studenten
Student.deleteOne({ name: “John Doe” }, (err) => {
if (err) console.log(err);
else console.log(“Erfolgreich gelöscht”);
});
```
Vergiss nicht, die Verbindung zur Datenbank zu schließen, nachdem du fertig bist:
```javascript
mongoose.connection.close();
```
Dies ist ein sehr einfacher Leitfaden und in der Praxis musst du wahrscheinlich mit Dingen wie Fehlerbehandlung, validierung und dergleichen umgehen.