Business
Jobs
  • About Us
  • Solutions
    • Job Postings
      Post your job and receive qualified candidates in 48h.
    • Candidate Assessments
      500+ technical and psychological tests, plus anti-fraud.
    • Headhunting
      Tailor-made executive search from start to finish.
    • Payroll + EOR
      Payroll dispersal and EOR across 15+ LATAM countries.
  • Pricing
  • Jobs

0

218
Views
¿Cómo poblar los objetos anidados en mongoose?

aquí está el esquema de reserva

 const bookingSchema = new mongoose.Schema({ userId: { type: mongoose.Schema.Types.ObjectId, ref: "User", required: true, }, routeId:{ type: mongoose.Schema.Types.ObjectId, ref: "Route", required: true, } })

En esta tabla, routeId (esquema de ruta) contiene la tabla Bus (referenciada).

 const routeSchema = new mongoose.Schema({ location:{ type: mongoose.Schema.Types.ObjectId, ref: 'Location', required: true }, duration: { type: Number, required: true }, Bus:{ type: mongoose.Schema.Types.ObjectId, ref:"Bus", required: true }, date: { type:String, required: true }, }, { timestamps: true, });

y finalmente el modelo de autobús

 const busSchema = new mongoose.Schema( { busNumber: { type: String, unique: true, required: true, }, seats: { type: Number, }, }, { timestamps: true, } );

Ahora quiero mostrar solo el número de autobús y no los datos completos del autobús. esta es la respuesta que estoy recibiendo. https://i.stack.imgur.com/S1qyZ.png

esta es la consulta que apliqué.

 router.get("/bus/myBooking/one/:id", auth, async (req, res) => { const _id = req.params.id; const myBooking = await Booking.findById({ _id }) .populate({path: 'routeId', populate: 'Bus'}) .select(["-_id","-userId","-createdAt","-updatedAt","-__v","-passengers._id","-departureDetails._id","-arrivalDetails._id"]); try { return !myBooking ? res.status(404).send("No booking found") : res.status(200).send(myBooking); } catch (e) { res.status(500).send(); } });
over 4 years ago · Santiago Trujillo
1 answers
Answer question

0

Este método funciona en algunas versiones de mongoose, así que puedes probar esto:

 await Booking.findById({ _id }) .populate({ path: 'routeId', populate: { path: 'Bus', model: Bus, select:"-_id busNumber" } })
over 4 years ago · Santiago Trujillo Report
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Sales
Legal
Terms and conditions Privacy policy
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Show me some job opportunities
There's an error!