mongoose 在响应周期中获取特定的键和值

w6lpcovy  于 2023-10-19  发布在  Go
关注(0)|答案(1)|浏览(90)
// const cookieParser = require("cookie-parser")
const Post = require("../models/post");
// const   User= require("../models/user")

module.exports.home= async(req, res)=>{
    try{
        console.log(req.cookies)
        const posts = await Post.find({})
        .populate("users")
        .populate({
            path:'comments',
            populate:{
                path:'user',
            }
        })
        .exec();
        // console.log(posts.content);
        // console.log(posts);

        //    res.cookie("user_id", 25);
        return res.render('home', {
        title: "Home Page ",
        posts:posts,
    }) 

    }
    catch(err){
        console.log("error in sending feed", err);
        return res.redirect("back");

    }
}

在回应中,我得到了发表评论的人的姓名,电子邮件,身体和密码,但我只想在回应中输入姓名,我如何才能解决这个问题
源代码链接:-https://github.com/himanshugupta2168/Codeial

zhte4eai

zhte4eai1#

您可以使用select选项仅选择所需的属性。像这样更新:

const posts = await Post.find({})
        .populate("users")
        .populate({
            path:'comments',
            populate:{
                path:'user',
                select: 'name -_id'
            }
        })

请注意,_id总是返回的,因此您可以显式地使用-_id对其进行重命名。进一步的阅读请参见文档。

相关问题