Модель документа 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 moduleconst mongoose = require("mongoose"); // Set Up the Database connectionmongoose.connect( useNewUrlParser: true, useUnifiedTopology: true}) // Defining customerSchema schemaconst customerSchema = new mongoose.Schema( { name: String, orderCount: Number }) // Defining customerSchema modelconst 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 moduleconst mongoose = require("mongoose"); // Set Up the Database connectionmongoose.connect( useNewUrlParser: true, useUnifiedTopology: true}) // Defining customerSchema schemaconst customerSchema = new mongoose.Schema( { name: String, orderCount: Number }) // Defining customerSchema modelconst 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-где