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

Memahami Hubungan &Kunci Asing di Luwak

Saya masih baru di Node, Mongoose, dan Mongo, tapi saya rasa saya bisa menjawab setidaknya sebagian dari pertanyaan Anda. :)

Metode Anda saat ini sama dengan yang saya coba lakukan pada awalnya. Pada dasarnya, akhirnya menyimpannya sangat mirip dengan ini (ditulis dalam JS, karena saya tidak tahu CoffeeScript):

var todoListSchema = new mongoose.Schema({
    name: String,
    todos: [{
        name: String,
        desc: String,
        dueOn: Date,
        completedOn: Date
    }]
});

Saya kemudian menemukan metode ini, yang saya cari, dan saya pikir apa yang Anda maksudkan:

var todoListSchema = new mongoose.Schema({
    name: String,
    todos: [{
        type: mongoose.Schema.Types.ObjectId,
        ref: 'Todo' //Edit: I'd put the schema. Silly me.
    }]
});

Ini menyimpan larik ObjectIds, yang kemudian dapat Anda muat menggunakan Query#populate dalam bahasa luwak.

Saya tidak tahu implikasi teknisnya, tetapi lebih masuk akal di otak saya jika saya memisahkannya, jadi itulah yang saya lakukan. :)

Sunting:Berikut adalah beberapa dokumen resmi yang mungkin berguna:http://mongoosejs.com/docs/ populate.html




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Spring-data-mongo tidak dapat membuat instance Java.util.List menggunakan Konstruktor

  2. Haruskah saya menggunakan Java String Pool untuk sinkronisasi berdasarkan id pelanggan unik?

  3. Tambal REST API ke Pembaruan Sebagian MongoDB di .NET

  4. Permintaan MongoDB untuk semua dokumen dengan bidang unik

  5. MongoDB memproyeksikan dokumen dengan jumlah lebih dari 2