Модель документа Mongoose.where() API
Метод Model.where() API Mongoose используется для извлечения документов из коллекции на основе условий. Мы можем напрямую использовать where() для любой модели, а для where() мы можем использовать различные реляционные условия для получения результата. Model.where() возвращает массив объектов. Каждый объект состоит из документа в коллекции.
Настройка приложения Node.js:
Шаг 1. Создайте приложение Node.js с помощью следующей команды:
npm init
Шаг 2: После создания приложения NodeJS установите необходимый модуль с помощью следующей команды:
npm install mongoose
Структура проекта: Структура проекта будет выглядеть следующим образом:
Пример 1. В этом примере мы установили соединение с базой данных с помощью мангуста и определили модель поверх customerSchema, имея два столбца «имя» и «orderCount». В конце концов, мы используем метод where в модели Customer, который даст нам массив объектов на основе заданного нами условия. В этом примере мы находим документы, в которых значение «orderCount» больше 10.
- app.js: запишите приведенный ниже код в файл app.js:
Javascript
// Require mongoose module const mongoose = require( "mongoose" ); // Set Up the Database connection mongoose.connect( useNewUrlParser: true , useUnifiedTopology: true }) // Defining customerSchema schema const customerSchema = new mongoose.Schema( { name: String, orderCount: Number } ) // Defining customerSchema model const Customer = mongoose.model( "Customer" , customerSchema); Customer.where( "orderCount" ).gt(10).then(result => { console.log(result) }); |
Шаги для запуска программы: Чтобы запустить приложение, выполните следующую команду из корневого каталога проекта:
node app.js
Выход:
[ { _id: new ObjectId("6304e7c8c21ca86f5ea6fce4"), name: "Customer3", orderCount: 20, __v: 0 } ]
Пример 2. В этом примере мы находим документы, в которых значение «orderCount» больше 5 и меньше 20.
- app.js: запишите приведенный ниже код в файл app.js:
Javascript
// Require mongoose module const mongoose = require( "mongoose" ); // Set Up the Database connection mongoose.connect( useNewUrlParser: true , useUnifiedTopology: true }) // Defining customerSchema schema const customerSchema = new mongoose.Schema( { name: String, orderCount: Number } ) // Defining customerSchema model const Customer = mongoose.model( "Customer" , customerSchema); Customer.where( "orderCount" ).gt(5).lt(20).then(result => { console.log(result) }); |
Шаги для запуска программы: Чтобы запустить приложение, выполните следующую команду из корневого каталога проекта:
node app.js
Выход:
[ { _id: new ObjectId("6304e7c8c21ca86f5ea6fce3"), name: "Customer2", orderCount: 10, __v: 0 }, { _id: new ObjectId("6305fa9f63f7ccbdbc0ee95c"), name: "Customer3", orderCount: 10, __v: 0 }, { _id: new ObjectId("6305fa9f63f7ccbdbc0ee95d"), name: "Customer4", orderCount: 10, __v: 0 } ]
Ссылка: https://mongoosejs.com/docs/api/model.html#model_Model-где