sql >> Database >  >> NoSQL >> MongoDB

Gegevens importeren uit CSV-bestand in Meteor-verzameling aan serverzijde

Je was heel dichtbij. Ik moest alleen een paar wijzigingen aanbrengen om het werkend te krijgen.

Ik weet niet hoe je .csv-bestand eruitziet, dus ik heb er een gemaakt die er zo uitziet:

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

Je file.split-operatie splitste de regels niet, maar zette alles op één grote regel. Ik deed het op deze manier en het werkte:

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

Dat zorgde ervoor dat individuele regels werden opgesplitst in leden van de array. Toen nam ik aan dat, aangezien je je invoer een CSV noemt, je waarden worden gescheiden door komma's, niet door pijpen. Dus ik heb je line.split in dit veranderd

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

Andere wijzigingen die ik heb aangebracht, zijn misschien niet de oorzaak van het falen van de jouwe, maar dit is hoe ik denk dat de dingen normaal gesproken worden gedaan...

In plaats van je verzameling op deze manier te declareren

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

Ik heb het zo gedaan

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

Merk op dat dit wordt uitgevoerd door zowel de server als de client.

In plaats van jouw manier om methoden op de server te declareren, heb ik dit gewoon in servercode gezet (niet in Meteor.start):

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

En natuurlijk heb ik de invoegregel onderaan je import_file_orders-functie gewijzigd

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));

BEWERKEN voor bijgewerkte code in de vraag:

Verplaats de functie import_file_orders van het clientblok naar het serverblok.




  1. Hoe werkt redis om te helpen bij persistentie van de sessie in azure?

  2. mongo _id veld dubbele sleutel fout

  3. MongoDB-configuratie in CakePHP 3.x

  4. Hoe SlaveOk in Mongoose te draaien?