как сделать запрос мангуста для поиска подходящих массивов - PullRequest
0 голосов
/ 05 июня 2019

Я создаю приложение для чата, в котором пользователь, впервые отправляя сообщение человеку, создает новую беседу в базе данных, но прежде чем каждый раз создавать новую, я хочу проверить, существует ли беседа. я строю это в Node.js и использую экспресс-фреймворк, и я использую Mongoose для обработки базы данных

const mongoose = require('mongoose');

const Conversation = new mongoose.Schema({
    Users : [
        {
            user_id : {
                type : String,
                required : true
            },
            username : {
                type : String,
                required : true
            },
            name : {
                type : String,
                required : true
            },
            profileUrl : {
                type : String,
                required : true
            }
        }
    ],
    createdAt : {
        type : Date,
        default : Date.now,
        required : true
    }

});


module.exports = mongoose.model("Conversation",Conversation); 

Есть ли запрос, где я могу проверить, существует ли диалог, который совпадает с массивом, который я передаю, я не смог найти способ поиска массива с объектами, и я хочу, чтобы все поля были равны, а не только один

1 Ответ

0 голосов
/ 05 июня 2019

// Создать функцию обратного вызова для module.exports.FindMessage = function (conditionQuery, callback) {Users .find (conditionQuery, callback)}

// than

User.FindMessage({$ or: [{username: username}]}, функция (err, message) {if (err) выбросить ошибку if (message.length> 0) {

        }
        else
        {
         }
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...