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

370
Views
Agregar documentos a una relación Muchos a Muchos en Mongoose (MongoDB)

Tengo una colección de usuarios y una colección de tareas. Muchos usuarios pueden tener muchas tareas y Muchas tareas pueden tener muchos usuarios. La forma correcta en la que creo hacer esto es con los siguientes modelos:

 var UserSchema = new Schema({ id: ObjectId, username: { type: String, required: true }, assignments: [ {type : mongoose.Schema.ObjectId, ref : 'Assignment'} ] }); var TaskSchema = new Schema({ id: ObjectId, title: { type: String, default: '' }, information: { type: String, default: '' }, assignments: [ {type : mongoose.Schema.ObjectId, ref : 'Assignment'} ] }); var AssignmentSchema = new Schema({ id: ObjectId, isCompleted: { type: Boolean, default: false }, completionDate: { type: Date, default: null }, tasks: [ {type : mongoose.Schema.ObjectId, ref : 'Task'} ], users: [ {type : mongoose.Schema.ObjectId, ref : 'User'} ] });

Si los modelos anteriores son correctos, ¿cómo se inserta una tarea con múltiples asignaciones de usuarios? Entiendo que primero crearía el documento de tareas para obtener su ObjectId, pero después de eso, ¿simplemente insertaría todas las asignaciones en la colección de asignaciones (con sus correspondientes Task y User objectId) y eso es todo? O tendría que insertar todas las asignaciones y luego editar cada usuario y tarea individual para insertar el ID de asignación en su propiedad de asignaciones.

Estoy seguro de que ya hay una pregunta de desbordamiento de pila como esta, pero no he podido encontrar ninguna. ¡Cualquier ayuda es apreciada!

about 4 years ago · Juan Pablo Isaza
1 answers
Answer question

0

Creo que tienes la respuesta en tu pregunta.

Cree una nueva tarea, capture la identificación de la tarea. Luego busque o cree un nuevo usuario, edite o agregue la identificación de la tarea, capture la identificación del usuario. Agregue la identificación de usuario a la tarea. Repita para usuarios adicionales.

Creo que esto es lo que dices en la parte final de tu pregunta.

No veo por qué esto no puede funcionar.

about 4 years ago · Juan Pablo Isaza 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!