sql >> Databáze >  >> NoSQL >> MongoDB

Jak importovat data ze souboru CSV do kolekce Meteor na straně serveru

Byli jste si velmi blízcí. Jen jsem musel udělat pár změn, aby to fungovalo.

Nevím, jak váš soubor .csv vypadá, takže jsem vytvořil takovýto:

A1, B1, C1, D1, E1, F1, G1, H1, I1
A2, B2, C2, D2, E2, F2, G2, H2, I2

Vaše operace file.split nerozdělovala řádky, ale dávala vše na jeden velký řádek. Udělal jsem to takto a fungovalo to:

var lines = file.split(/\r\n|\n/);

Tím se jednotlivé řádky rozdělily na členy pole. Pak jsem předpokládal, že vzhledem k tomu, že svůj vstup nazýváte CSV, jsou vaše hodnoty odděleny čárkami, nikoli svislými čarami. Takže jsem změnil váš line.split na toto

var line_parts = line.split(',');

Jiné změny, které jsem provedl, možná nezpůsobily ty vaše selhání, ale myslím si, že takhle se věci dělají normálně...

Místo toho, abyste svou sbírku takto deklarovali

Meteor.orders = new Meteor.Collection('Orders');

Udělal jsem to takto

Orders = new Mongo.Collection("orders");

Všimněte si, že to spouští server i klient.

Místo vašeho způsobu deklarování metod na serveru jsem to vložil do kódu serveru (ne do Meteor.start):

Meteor.methods({
    upload : function(fileContent) {
        console.log("start insert");
        import_file_orders(fileContent);
        console.log("completed");
    }
});

A samozřejmě jsem změnil řádek vložení ve spodní části vaší funkce import_file_orders

var result = Orders.insert({Patient:pat_id, Exam_code:ex_key, Exam_name:ex_name, Clinical_info:clin_info, Order_info:order_info, Clinician_first:clinician_first_name, Clinician_last:clinician_last_name, Clinician_c_code:clinician_code, Clinician_riziv:clinician_riziv, Planned:null});
console.log(Orders.findOne(result));

UPRAVTE aktualizovaný kód v otázce:

Přesuňte funkci import_file_orders z bloku klienta do bloku serveru.




  1. Jak určit verzi Meteor MongoDB na místní?

  2. osvědčený postup pro synchronizaci dat v nodejs

  3. Optimální pluginy a projekt pro použití IntelliJ IDEA pro JavaScript?

  4. Spark-on-HBase:Konektor HBase založený na DataFrame