• Jobs
  • About Us
  • professionals
    • Home
    • Jobs
    • Courses and challenges
  • business
    • Home
    • Post vacancy
    • Our process
    • Pricing
    • Assessments
    • Payroll
    • Blog
    • Sales
    • Salary Calculator

0

186
Views
¿Cómo puedo crear un módulo para el sitio web de un curso usando mongoDB y node.js?

/ Quiero crear una sección de módulo para el sitio web de un curso para el que también necesitaré un esquema de lección. Entonces, ¿cómo puedo diseñar un esquema de lección, un esquema de módulo y un esquema de curso para que funcionen exactamente como se necesita? Actualmente estoy haciendo esto /

 import mongoose from 'mongoose' const LessonSchema = new mongoose.Schema({ title: String, content: String, resource_url: String }) const ModuleSchema = new mongoose.Schema({ name: { type: String, required: true }, lessons: [LessonSchema] }) export const Module = mongoose.model('Module', ModuleSchema); const CourseSchema = new mongoose.Schema({ name: { type: String, trim: true, required: 'Name is required' }, price: { type: String, trim: true, required: true }, image: { data: Buffer, contentType: String }, intro: { type: String, required :true }, description: { type: String, trim: true }, category: { type: String, required: 'Category is required' }, updated: Date, created: { type: Date, default: Date.now }, instructor: {type: mongoose.Schema.ObjectId, ref: 'User'}, published: { type: Boolean, default: false }, modules: [ModuleSchema] }) export default mongoose.model('Course', CourseSchema)

Arriba estaba el esquema y esto es logico

 const newLesson = async (req, res) => { try { let lesson = req.body.lesson let course = await Course.find({modules: {_id: req.params.moduleId}}) console.log(course) } catch (err) { return res.status(400).json({ error: errorHandler.getErrorMessage(err) }) } } const newModule = async (req, res) => { try { let lesson = req.body.lesson let result = await Course.findByIdAndUpdate(req.course._id, {$push: {modules: {name: req.body.name, lessons: lesson}}, updated: Date.now()}, {new: true}) .populate('instructor', '_id name') .exec() res.json(result) } catch (err) { return res.status(400).json({ error: errorHandler.getErrorMessage(err) }) } }

** He estado pensando en esto desde hace un tiempo y no puedo superarlo. ¿Sabes cómo puedo dar forma al esquema y la lógica para poder impulsar las lecciones en el módulo y luego el módulo en el esquema del curso? **

about 3 years ago · Santiago Trujillo
Answer question
Find remote jobs

Discover the new way to find a job!

Top jobs
Top job categories
Business
Post vacancy Pricing Our process Sales
Legal
Terms and conditions Privacy policy
© 2025 PeakU Inc. All Rights Reserved.

Andres GPT

Recommend me some offers
I have an error