У меня есть следующая схема списка:
const ListSchema = mongoose.Schema({
title: { type: String, required: true, max: 100 },
items: [{
type: mongoose.Schema.Types.ObjectId,
ref: 'Item'
}],
});
Все работает нормально, когда я заполняю его элементами. Однако я хочу иметь дополнительный столбец для каждого элемента в списке, поэтому я изменил схему:
const ListSchema = mongoose.Schema({
title: { type: String, required: true, max: 100 },
items: [{
item: {
type: mongoose.Schema.Types.ObjectId,
ref: 'Item'
},
quantity: 'String'
}],
});
Метод populate, к сожалению, не работает с вышеуказанным подходом.
Для реляционной базы данных я бы использовал сводную таблицу для сохранения идентификатора списка, идентификатора элемента и количества, но я действительно не знаю, как MongoDB обрабатывает такие случаи. Любые предложения приветствуются.