


Bulk importieren Sie eine CSV -Datei mit Mongoose mit node.js in mongoDB
Dieses Thema ist für mich sehr angenehm. In vielen Webanwendungen ist es weit verbreitet, Benutzereingaben zu akzeptieren und einen einzelnen Datensatz in Ihrer Datenbank zu speichern. Aber was ist, wenn Ihre Benutzer (oder Sie) mehrere Einfügungen in einem einzigen Befehl ausführen möchten? Interagiert mit MongoDB. Wenn Sie dies nicht tun, würde ich empfehlen, meine
Einführung in Mongoose für MongoDB und Node.jsArtikel zuerst zu lesen. Dieser Artikel beschreibt, wie Mongoose mit MongoDB interagiert, indem sie starke Schemata erstellen, aus denen ein Modell erstellt wird. Wenn Sie bereits ein gutes Verständnis für Mongoose haben, gehen wir fort. Navigieren Sie in einer Eingabeaufforderung zu dem Ort, an dem Sie Ihre Node.js -Anwendungen hosten möchten, und führen Sie die folgenden Befehle aus:
Verwenden des Flags bedeutet, dass das Projekt mit den vorhandenen Standardwerten initialisiert wird, sodass die Anwendung mit
index.jsbeginnt. Bevor wir CSV -Dateien erstellen und analysieren, müssen wir zuerst einige erste Setups durchführen. Wir möchten dies zu einer Webanwendung machen. Dazu verwenden Sie das Express-Paket, um alle Nitty-Gity-Server-Setups zu verarbeiten. Installieren Sie in Ihrer Eingabeaufforderung Express, indem Sie den folgenden Befehl ausführen:
Da diese Webanwendung Dateien über ein Webformular akzeptiert, werden wir auch das Express-Express-Datei-Upload verwenden. Lassen Sie uns dies jetzt auch installieren:
mkdir csvimport<br>cd csvimport<br>npm init -y<br>
-y
Wir haben genügend Erstkonfiguration erstellt, um die Webanwendung einzurichten und eine grundlegende Webseite zu erstellen, die ein Datei -Upload -Formular erstellt. Diese Datei legt den Webserver ein.
npm install express --save<br>
-Datei zurück, die das Webformular enthält, mit dem ein Benutzer eine CSV -Datei hochladen kann. Dies bedeutet, dass Sie im Root -Verzeichnis erfolgreich mit dem Webserver verbunden sind. Diese Datei erstellt das Formular zum Hochladen einer CSV -Datei.
- Ein Link zu /template , der beim Klicken eine CSV -Vorlage herunterladen kann, die mit den zu importierenden Informationen besiedelt werden kann. Das ist eine in HTML verwendete Codierungsmethode, wenn das Formular ein Datei -Upload enthält.
-
encType
multipart/form-data
Wenn Siefile
http: // localhost: 8080/ besuchen, sehen Sie das früher erstellte Formular. Wenn Sie die Einführung in den Mungoosemultipart/form-data
-Aktel lesen, wurde ein Autorschema erstellt. In diesem Artikel werden Sie dieses Schema neu erstellen und es dem Benutzer ermöglichen, eine Sammlung von Autoren in die MongoDB -Datenbank zu importieren. Schauen wir uns das Autorenschema an. Bevor wir dies tun, haben Sie es wahrscheinlich vermutet - wir müssen das Mongoose -Paket installieren:
Erstellen des Schemas und des Modells Mit dem installierten Mongoose -Installieren erstellen wir ein neues
Autor. Die CSV -Vorlage, die durch Klicken auf den Vorlagelink heruntergeladen werden kann. Um die CSV -Vorlageerzeugung zu unterstützen, werden wir das
-Paket verwenden. Dieses NPM -Paket wandelt JSON mit Spaltentiteln und ordnungsgemäßen Zeilenenden in CSV um. Sie werden diesen neuen Code für die Vorlagenroute an den zuvor erstellten index.js Datei anhängen:
mkdir csvimport<br>cd csvimport<br>npm init -y<br>
Das erste, was dieser Code tut, ist eine neue
template.jsDatei (als nächstes) und erstellen Sie eine Route für /template . In dieser Route wird eine
-Funktion in der Dateinpm install express --save<br>
aufgerufen. Es erstellt und exportiert dann eine -Funktion. Diese Funktion akzeptiert die Anforderungs- und Antwortobjekte aus dem Express -Server. Dies kann auf zwei Arten erfolgen. Der erste Weg (der in diesem Tutorial erfolgt) besteht darin, eine statische Liste der Felder zu erstellen, die in die Vorlage aufgenommen werden sollen. Der zweite Weg besteht darin, die Felderliste dynamisch zu erstellen, indem die Eigenschaften aus dem Autorenschema extrahiert werden. Es wäre eine schöne Idee gewesen, die dynamische Methode zu verwenden, aber es wird etwas kompliziert, wenn Sie nicht mehrere Eigenschaften aus dem Schema in die CSV -Vorlage einfügen möchten. In diesem Fall enthält unsere CSV -Vorlage die Eigenschaften index.js mit einer Datenbankverbindung und einer neuen konfigurierten Postroute angelegt werden können. Zum Glück gibt es mehrere großartige Bibliotheken, die diesen Job unterstützen. Für dieses Tutorial werden wir das -Funktion aus der Datei upload.js aufruft. Es ist nicht erforderlich, diese Funktionen in separate Dateien zu platzieren. Es ist jedoch am besten, separate Dateien für diese Routen zu erstellen, da er den Code schön und organisiert hält. Die ersten drei Zeilen enthalten die erforderlichen Pakete, die zum Analysieren und Speichern der CSV -Daten erforderlich sind. Als nächstes wird die Funktion Eigenschaft im Array. Die Eigenschaft index.html an sie übergeben. Andernfalls wird dem Benutzer eine Erfolgsnachricht angezeigt, die angibt, wie viele Autoren in der Datenbank hochgeladen und gespeichert wurden. einige Datensätze hochgeladen. Wenn Ihr Anwendungsfall die Möglichkeit erfordert, Tausende von Datensätzen hochzuladen, ist es möglicherweise eine gute Idee, die Datensätze in kleineren Brocken zu speichern. Dies kann auf verschiedene Arten erfolgen. Wenn ich es implementieren würde, würde ich empfehlen, die genießen! Mary ist ein Softwareentwickler mit Sitz in Lagos, Nigeria, mit Fachwissen in Node.js, JavaScript, MySQL und NoSQL Technologies.mkdir csvimport<br>cd csvimport<br>npm init -y<br>
_id
und created
nicht, da diese über Code gefüllt werden. Wenn Sie jedoch keine Felder haben, die Sie ausschließen möchten, funktioniert die dynamische Methode ebenfalls. Dieses Autoren.CSV
herunterladen. Diese Datei wird vor dem Hochladen bevölkert. Kommen wir zu den Fleisch und Kartoffeln dieses Beispiels und analysieren Sie diese CSV -Datei. Die Datei json2csv
erfordert eine Aktualisierung, um eine Verbindung zu MongoDB herzustellen und eine neue Postroute zu erstellen, mit der das Datei -Upload: csv
res
-Paket verwenden, das mit dem folgenden Befehl installiert werden kann: post
für die Verwendung durch die Datei index.js exportiert. In dieser Funktion findet die Magie statt. Wenn dies nicht der Fall ist, wird ein Fehler zurückgegeben, der angibt, dass eine Datei hochgeladen werden muss. Dies erfolgt durch den Zugriff auf das Array authorFile
definiert wurde. Dieses Array wird verwendet, um die Daten in der Datenbank zu speichern. Diese Funktion akzeptiert die CSV -Datei als Zeichenfolge. Die Zeichenfolge wird aus der Eigenschaft files
extrahiert. Die Eigenschaft file
enthält den Inhalt der hochgeladenen CSV -Datei. Diese sind beide auf file
festgelegt. Dies gibt der Bibliothek mit, dass die erste Zeile der CSV -Datei die Header enthält und dass leere Zeilen ignoriert werden sollten. Das Ereignis wird für jede Zeile der CSV -Datei einmal aufgerufen. Dieses Ereignis enthält ein JavaScript -Objekt der analysierten Daten. Dieses Objekt wird dann zum -Array hinzugefügt. In der Ereignisrückruffunktion werden wir die Funktion authors
data
-Rallback -Funktion zu aktualisieren, um die Länge des Autorenarrays zu überprüfen. Wenn das Array Ihre definierte Länge überschreitet, z. 100, rufen Sie die Author.create
-Funktion auf dem Array auf und setzen Sie das Array auf leeren zurück. Dadurch wird die Datensätze in Teilen von 100 gespeichert. Lassen Sie die endgültige create
-Anruf in der end
-Callback -Funktion, um die endgültigen Datensätze zu speichern.
Das obige ist der detaillierte Inhalt vonBulk importieren Sie eine CSV -Datei mit Mongoose mit node.js in mongoDB. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

AI Hentai Generator
Erstellen Sie kostenlos Ai Hentai.

Heißer Artikel

Heiße Werkzeuge

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 chinesische Version
Chinesische Version, sehr einfach zu bedienen

Senden Sie Studio 13.0.1
Leistungsstarke integrierte PHP-Entwicklungsumgebung

Dreamweaver CS6
Visuelle Webentwicklungstools

SublimeText3 Mac-Version
Codebearbeitungssoftware auf Gottesniveau (SublimeText3)

Heiße Themen



In Artikel werden JavaScript -Bibliotheken erstellt, veröffentlicht und aufrechterhalten und konzentriert sich auf Planung, Entwicklung, Testen, Dokumentation und Werbestrategien.

In dem Artikel werden Strategien zur Optimierung der JavaScript -Leistung in Browsern erörtert, wobei der Schwerpunkt auf die Reduzierung der Ausführungszeit und die Minimierung der Auswirkungen auf die Lastgeschwindigkeit der Seite wird.

Häufig gestellte Fragen und Lösungen für das Ticket-Ticket-Ticket-Ticket in Front-End im Front-End-Entwicklungsdruck ist der Ticketdruck eine häufige Voraussetzung. Viele Entwickler implementieren jedoch ...

In dem Artikel werden effektives JavaScript -Debuggen mithilfe von Browser -Entwickler -Tools, der Schwerpunkt auf dem Festlegen von Haltepunkten, der Konsole und der Analyse der Leistung erörtert.

In diesem Artikel wird der effektive Gebrauch des Sammlungsrahmens von Java untersucht. Es betont die Auswahl geeigneter Sammlungen (Liste, Set, Karte, Warteschlange) basierend auf Datenstruktur, Leistungsanforderungen und Thread -Sicherheit. Optimierung der Sammlungsnutzung durch effizientes Gebrauch

In dem Artikel wird erläutert, wie Quellkarten zum Debuggen von JavaScript verwendet werden, indem er auf den ursprünglichen Code zurückgegeben wird. Es wird erläutert, dass Quellenkarten aktiviert, Breakpoints eingestellt und Tools wie Chrome Devtools und WebPack verwendet werden.

In diesem Tutorial wird erläutert, wie man mit Diagramm.js Kuchen-, Ring- und Bubble -Diagramme erstellt. Zuvor haben wir vier Chart -Arten von Charts gelernt. Erstellen Sie Kuchen- und Ringdiagramme Kreisdiagramme und Ringdiagramme sind ideal, um die Proportionen eines Ganzen anzuzeigen, das in verschiedene Teile unterteilt ist. Zum Beispiel kann ein Kreisdiagramm verwendet werden, um den Prozentsatz der männlichen Löwen, weiblichen Löwen und jungen Löwen in einer Safari oder den Prozentsatz der Stimmen zu zeigen, die verschiedene Kandidaten bei der Wahl erhalten. Kreisdiagramme eignen sich nur zum Vergleich einzelner Parameter oder Datensätze. Es ist zu beachten, dass das Kreisdiagramm keine Entitäten ohne Wert zeichnen kann, da der Winkel des Lüfters im Kreisdiagramm von der numerischen Größe des Datenpunkts abhängt. Dies bedeutet jede Entität ohne Anteil

Sobald Sie das Typscript-Tutorial für Einstiegsklasse gemeistert haben, sollten Sie in der Lage sein, Ihren eigenen Code in eine IDE zu schreiben, die TypeScript unterstützt und in JavaScript zusammenfasst. Dieses Tutorial wird in verschiedenen Datentypen in TypeScript eingetaucht. JavaScript hat sieben Datentypen: NULL, UNDEFINED, BOOLEAN, NUMMER, STRING, SYMBOL (durch ES6 eingeführt) und Objekt. TypeScript definiert mehr Typen auf dieser Grundlage, und dieses Tutorial wird alle ausführlich behandelt. Null -Datentyp Wie JavaScript, null in TypeScript
