Конвейер, работающий с агрегацией идентификатора объекта с помощью $ lookup - PullRequest
0 голосов
/ 16 октября 2018

Users.aggregate([{ $geoNear: { near: {type: "Point" , coordinates: [lng,lat] } , distanceField: "dist.calculated" , maxDistance: 2000000 ,query: { deleted: '0' , _id: { $ne: user_result._id}}}}, { $lookup: {from: 'images' , let: { user_connected: '$_id' } , pipeline:[ {
                         $match: {
                             $expr:{
                                       $eq: [ "$user" , "$$user_connected" ]
                             }
                         },
                        } ] , as: 'images'}} ,{ $skip: skip },{ $limit: perpage}]).allowDiskUse(true).exec(function (err, result) {
                         if(err) {
                            return res.status(400).json({success: 202 , message: "Database Error." , result: err});
                         }
                       if(isset(result) && !empty(result)){
                         return res.status(200).json({success: 200 , message: "Users Data." , result: result});
                       }else{
                        return res.status(400).json({success: 205 , message: "No Records Found." , result: []});
                       }
                    });
                    
var mongoose = require('mongoose');
mongoose.Promise = require('bluebird');
var Schema = mongoose.Schema;
var ImagesSchema = new Schema({
        name: { type: String  , required: true},
        user: [{ type: Schema.Types.ObjectId, ref:'users' , default: '' }],
        status: { type: String , default: ''} ,
        expireTime: { type:  Date , default: new Date()}
    },
    {timestamps: true})
    //.index({ "createdAt": 1 }, { expireAfterSeconds: 86400 });
    console.log("Create Index if collection droped")

var images = mongoose.model('images', ImagesSchema);

module.exports = images;

Я создаю конвейер для подключения пользовательской модели к модели изображений, но он не получает все изображения из модели изображений.Я подключаю свою модель пользователя к изображениям для отображения в списке пользователей, но она не работает.Кто-нибудь может мне помочь?

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