mongoose a schema содержит itselft [duplicate]

Вы хотите Type.GetNestedTypes . Это даст вам список типов, которые вы можете запросить для своих имен.

1
задан Alex Chumbley 21 September 2015 в 19:27
поделиться

1 ответ

Предупреждение уже показывает вам: «Вы можете только гнездо использовать refs или массивы». Это дизайн мангуста.

Но вы можете сделать это:

var MySchema = new mongoose.Schema({
    objectId: String,
    parent: {
        type: mongoose.Schema.ObjectId,
        ref: 'MySchema'
    },
})

Это будет использовать схему внутри схемы, тогда вы можете использовать «предварительное сохранение» для обновления данных вашего родителя. Или вы можете использовать массив ссылок и сохранить только один элемент.

Что делать, экспортируйте схемы, а не модели, чтобы вы могли их вложить. например:

module.exports = MySchema;

Затем у меня есть некоторый appModel для установки моделей моей коллекции схем, например this (app_model.js):

if(mongoose.modelNames().indexOf('mySchema') < 0) mongoose.model('mySchema', mySchema);
2
ответ дан Scoup 15 August 2018 в 18:50
поделиться
  • 1
    Спасибо, главное здесь было использовать схемы, а не модели – Alex Chumbley 21 September 2015 в 22:44
Другие вопросы по тегам:

Похожие вопросы: