MongoDB
 sql >> Baza danych >  >> NoSQL >> MongoDB

jak mogę przepisać moje zapytanie z mangusty po podzieleniu danych z jednego modelu na dwa?

Po pierwsze, sugeruję, abyś skorzystał z zapytania wypełniającego, jeśli uważasz, że wypełnianie nie da ci potrzebnych danych, możesz uruchomić dwa zapytania i scalić te wyniki.

dla populate znalazłem rozwiązanie z oficjalnego dokumentu mangusty. możesz to zrobić.

var mongoose = require('mongoose')
  , Schema = mongoose.Schema

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

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

oto link do dokumentu:http://mongoosejs.com/docs/populate.html




  1. Redis
  2.   
  3. MongoDB
  4.   
  5. Memcached
  6.   
  7. HBase
  8.   
  9. CouchDB
  1. mongodb wersja 3.0.0 klient robomongo mongovue

  2. Dlaczego otrzymuję wyjątek InvalidDocument podczas zapisywania obiektu w MongoDB w Django po raz pierwszy?

  3. MongoDB Wiele indeksów a pojedynczy indeks na tablicy poddokumentów?

  4. Jak tworzyć, wyświetlać i upuszczać kolekcje w MongoDB

  5. Jak łatwo zarządzać aktualizacjami baz danych i poprawkami bezpieczeństwa