MongoDB
 sql >> Teknologi Basis Data >  >> NoSQL >> MongoDB

Cara mengimpor data dari file CSV ke koleksi Meteor di sisi server

Anda sangat dekat. Saya hanya perlu membuat beberapa perubahan untuk membuatnya berfungsi.

Saya tidak tahu seperti apa file .csv Anda, jadi saya membuatnya seperti ini:

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

Operasi file.split Anda tidak memisahkan baris, tetapi menempatkan semuanya dalam satu baris besar. Saya melakukannya dengan cara ini dan berhasil:

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

Itu membuat baris individu untuk dibagi menjadi anggota array. Kemudian saya berasumsi bahwa, karena Anda menyebut input Anda sebagai CSV, nilai Anda dipisahkan dengan koma, bukan pipa. Jadi saya mengubah line.split Anda menjadi ini

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

Perubahan lain yang saya buat mungkin bukan penyebab kegagalan Anda, tetapi menurut saya beginilah hal yang biasa dilakukan...

Alih-alih mendeklarasikan koleksi Anda seperti ini

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

Saya melakukannya seperti ini

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

Perhatikan bahwa ini dijalankan oleh server dan klien.

Alih-alih cara Anda mendeklarasikan metode di server, saya hanya memasukkan ini ke dalam kode server (bukan di Meteor.start):

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

Dan, tentu saja, saya mengubah baris sisipan di bagian bawah fungsi import_file_orders Anda

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

EDIT untuk kode yang diperbarui dalam pertanyaan:

Pindahkan fungsi import_file_orders dari blok klien ke blok server.




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. kueri mengembalikan jumlah item dalam koleksi tersemat mongodb

  2. Muat data percikan ke Mongo / Memcached untuk digunakan oleh layanan Web

  3. Ubah kueri MongoDB menjadi sintaks Spring MongoDB

  4. Mengubah direktori penyimpanan data MongoDB

  5. Secara Otomatis Mematikan Dokumen Koleksi MongoDB