Выполните запрос на соединение с mongo через nodejs

#node.js #mongodb #api #collections

Вопрос:

Я хочу выполнить инструкцию join для коллекции mongo и получить данные из другой коллекции также с помощью значения общего поля

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

 const express = require('express')
const Product = require('../models/products')
const router = new express.Router()

router.get('/products/view', function(req, res, next) {
    Products.find(function (err, events) {
      if (err) return next(err);
      res.json(events);
    });
  });  // THIS IS WORKING BUT ONLY GIVING DATA OF ONE TABLE

router.get('/products/paginate', function(req, res, next) {
    Product.aggregate([
        {
          $lookup: {
            from: 'hsncodes',
            localField: 'hsncode',
            foreignField: 'hsncode',
            as: 'hsncodedetails'
          }
    }]);
}); // THIS IS NOT WORKING

 

Комментарии:

1. Я думаю , что это должно быть Products.aggregate (), возможно, вы забыли » s «в конце, и если это все еще не работает, попробуйте удалить» s » в из : «hsncodes» . я имею в виду обратиться к коллекции в единственном числе .

2. еще одним хорошим решением этой проблемы может быть использование виртуальных машин в мангусте . пожалуйста, дайте мне знать, что я напишу решение этой проблемы с помощью виртуалов

3. Продукты не могут быть, потому что моя модель называется Product

4. кроме того, имя поля-только Hsncode, тогда почему я должен добавлять к нему s

5. @шашватгупта ??