query mongodb
db.inventory.find( {} )
query mongodb
db.inventory.find( {} )
query mongodb
const Books = require("Books.js") async getBooks(req, res, next) { let query; // Copy req.query let reqQuery = { ...req.query }; // Fields to exclude const removeFields = ["select", "sort"]; // Loop over removeFields and delete them from reqQuery removeFields.forEach(param => delete reqQuery[param]); // Create query string let queryStr = JSON.stringify(reqQuery); // Create operators ($gt, $gte, etc) queryStr = queryStr.replace( /b(gt|gte|lt|lte|in)b/g, match => `$${match}` ); // Find resource query = Books.findQuery(JSON.parse(queryStr)); // Select Fields if (req.query.select) { const fields = req.query.select.split(",").join(" "); query = query.select(fields); } // Sort if (req.query.sort) { const sortBy = req.query.sort.split(",").join(" "); query = query.sort(sortBy); } else { query = query.sort("-createdAt"); } // Pagination const page = parseInt(req.query.page, 10) || 1; const limit = parseInt(req.query.limit, 10) || 10; const startIndex = (page - 1) * limit; const endIndex = page * limit; const total = await Books.countDocuments(); query = query.skip(startIndex).limit(limit); // Executing query let books = await query; // Pagination result const pagination = {}; if (endIndex < total) { pagination.next = { page: page + 1, limit, }; } if (startIndex > 0) { pagination.prev = { page: page - 1, limit, }; } res.status(200).json({ success: true, count: books.length, pagination, data: books, }); }
Copyright © 2021 Codeinu
Forgot your account's password or having trouble logging into your Account? Don't worry, we'll help you to get back your account. Enter your email address and we'll send you a recovery link to reset your password. If you are experiencing problems resetting your password contact us