sql >> Databáze >  >> NoSQL >> MongoDB

MongoDB:Jak používat jedno schéma jako dílčí dokument pro různé kolekce definované v různých souborech

Exportujte schéma sub-doc parametrů jako modul.

// Parameter Model file 'Parameter.js'
var mongoose = require('mongoose');
var Schema = mongoose.Schema;

var ParameterSchema = new Schema({
  id: {
    type: String,
    trim: true,
    default: ''
  },
  value: {
    type: String,
    trim: true,
    default: ''
  }
});

module.exports = ParameterSchema;
// Not as a mongoose model i.e. 
// module.exports = mongoose.model('Parameter', ParameterSchema);

Nyní požadujte exportované schéma modulu ve svém nadřazeném dokumentu.

// Require the model exported in the Parameter.js file
var mongoose = require('mongoose');
var Schema = mongoose.Schema;
var Parameter = require('./Parameter');

var FirstCollectionSchema = new Schema({
  name: {
    type: String,
    trim: true,
    default: ' 
  },
  parameters: [Parameter]
});

module.exports = mongoose.model('FirstCollection', FirstCollectionSchema);

Nyní uložíte kolekci a dílčí dokument.

var FirstCollection = require('./FirstCollection')

var feat = new FirstCollection({
  name: 'foo',
  parameters: [{
    id: 'bar',
    value: 'foobar'
  }]
});

feat.save(function(err) {
  console.log('Feature Saved');
})



  1. Spring HATEOAS RepresentationModel, nelze nastavit odkazy vlastností, protože žádný setter, žádný zánik a není součástí konstruktoru persistence

  2. Jednoduchá implementace značkování s MongoDB

  3. Nelze připojit Mongo shell k Mongo Atlas M0 pomocí mongodb+srv

  4. Může mongorestore převzít jeden argument adresy URL místo samostatných argumentů?