Estoy trabajando en mi proyecto personal, que es solo un blog simple, y me quedé atascado con este problema:
Tengo 3 esquemas de mangosta:
Blog:
var blogSchema = new mongoose.Schema({ title: String, image: String, description: String, body: String, created: { type: Date, default: Date.now() }, comments: [ { type: mongoose.Schema.Types.ObjectId, ref: "Comment" } ] });Comentario:
var commentSchema = new mongoose.Schema({ text: String, author_id: { type: mongoose.Schema.Types.ObjectId, ref: "User" } });Usuario:
var userSchema = new mongoose.Schema({ username: String, password: String, avatar_url: String, email: String });Y en cada publicación de blog, intento mostrar comentarios de la matriz que funciona correctamente, pero luego no sé cómo acceder al modelo de usuario para mostrar nombres de usuario y avatar_urls
app.get("/blogs/:id",function(req,res){ Blog.findById(req.params.id).populate("comments").populate("author_id").exec(function(err,findBlog){ if(err){ res.redirect("back"); console.log(err); }else{ res.render("show" , {blog: findBlog}); } }) })debe declarar la información del usuario como el nombre de usuario en el esquema del blog, luego solo usted puede enviar una solicitud al esquema de usuario para avatar_url