Работа со списками в схемах Mongoose: подробное руководство

Чтобы создать список в схеме Mongoose, вы можете использовать тип Mongoose Array. Это позволяет вам определить поле массива в вашей схеме. Вот пример того, как можно создать список в схеме Mongoose:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const MySchema = new Schema({
  myList: {
    type: [String] // Array of strings
  }
});
const MyModel = mongoose.model('MyModel', MySchema);

В приведенном выше примере мы определяем схему под названием MySchemaс полем под названием myList. Поле myListимеет тип Arrayи в данном случае представляет собой массив строк.

Вы также можете определить массив объектов, используя схему Mongoose. Вот пример:

const mongoose = require('mongoose');
const Schema = mongoose.Schema;
const MySchema = new Schema({
  myList: [{
    name: String,
    age: Number
  }]
});
const MyModel = mongoose.model('MyModel', MySchema);

В этом примере поле myListпредставляет собой массив объектов, где каждый объект имеет поле nameтипа Stringи ageполе типа Number.

Вы можете выполнять различные операции с полем списка, например добавлять элементы, удалять элементы, обновлять элементы и запрашивать список. Вот несколько примеров:

// Creating a new document
const myDoc = new MyModel({
  myList: ['item1', 'item2', 'item3']
});
// Adding elements to the list
myDoc.myList.push('item4');
myDoc.myList.push('item5');
// Removing elements from the list
myDoc.myList.pull('item3');
// Updating an element in the list
const index = myDoc.myList.indexOf('item2');
myDoc.myList[index] = 'updatedItem';
// Querying the list
const result = await MyModel.find({ myList: 'item1' });

Это всего лишь несколько примеров того, как можно создавать списки и управлять ими в схемах Mongoose. Существует множество других методов и операций, в зависимости от ваших конкретных требований.