MongoDB
 sql >> Cơ Sở Dữ Liệu >  >> NoSQL >> MongoDB

Mongodb và Express

http://mongoosejs.com/docs/populate.html xây dựng với một ví dụ rất tốt đẹp. Tôi đã trích xuất ý chính ở đây cho bạn

{
var personSchema = Schema({
  _id     : Number,
  name    : String,
  age     : Number,
  stories : [{ type: Schema.Types.ObjectId, ref: 'Story' }]
});

var storySchema = Schema({
  _creator : { type: Number, ref: 'Person' },
  title    : String,
  fans     : [{ type: Number, ref: 'Person' }]
});

var Story  = mongoose.model('Story', storySchema);
var Person = mongoose.model('Person', personSchema);

}

vì vậy, bây giờ bạn có hai mô hình câu chuyện và người trong đó câu chuyện đề cập đến một người thông qua trường _creator.

bây giờ để điền _creator trong khi truy vấn thông qua câu chuyện, bạn thực hiện như sau:

{

Story
.findOne({ title: 'Once upon a timex.' })
.populate('_creator')
.exec(function (err, story) {
  if (err) return handleError(err);
  console.log('The creator is %s', story._creator.name);
  // prints "The creator is Aaron"
});
}

nhưng bạn cũng cần đảm bảo rằng bạn đã lưu các bản ghi đúng cách để truy xuất nó đúng cách. trong khi tiết kiệm, bạn chỉ cần gán _id. xem bên dưới.

{
var aaron = new Person({ _id: 0, name: 'Aaron', age: 100 });

aaron.save(function (err) {
  if (err) return handleError(err);

  var story1 = new Story({
    title: "Once upon a timex.",
    _creator: aaron._id    // assign the _id from the person
  });

  story1.save(function (err) {
    if (err) return handleError(err);
    // thats it!
  });
});

}



  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. Trong Mongo, có cách nào để kiểm tra và thiết lập như hoạt động nguyên tử không?

  2. Làm cách nào để loại trừ các trường khỏi tài liệu được nhúng trong Mongoid?

  3. Mongodb không được cập nhật đúng cách từ 4.2 lên 4.4

  4. Cách tốt nhất để lưu trữ thời gian trong ngày ở Mongoose

  5. MongoDB $ indexOfCP