Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

178
Visualizações
Cómo usar un modelo en otro modelo

Tengo dos modelos separados, nombre de empleado y usuario con algunos datos comunes y un ID de cuenta para vincularse entre sí. Un registro para cada modelo es el siguiente:

 Employee _id:1639137618164 name:"*****" sites:Array company:”Software” jobTitle: “Associate Software Engineer” email:"*****" phonesms:"1" phonevoice:"1" licenseNumber:"" avatarStamp:0 pined:false accountId: 1639129314021 //link attribute countryCodeSms:"US" countryCodeVoice:"US" inviteCode:"09611" emergencyRoles: Object invite: "booksRbUoSM"

y para el usuario es

 _id:1639129314021 firstName:"*** ***" lastName:"****" companyName:"SITS" passwordReset:"" activated:true accountId:1639129314021 // link attribute siteId:-1 role:0 last:1639137913873 blocked:false blockedtext:"" trialend:1640338913781 paytype:1 hashAccess:Array emergencyEnabled:false visitorTypes:Array sitesLimit:2 manualCreation:false username:"*************" password:"**********************************" email:"*********************" passwordNotification:true passwordLifecycle:1646906375986 isNewUser:true listFeature:Object

Quiero buscar desde el modelo de usuario si existe algún empleado con ese identificador de cuenta o no, si hay un empleado asociado con el identificador de cuenta, luego agregar un nuevo empleado con los datos comunes disponibles. de otra forma no. ¿Cómo puedo hacer esto en bucle invertido? ¡Estoy atrapado aquí!

over 4 years ago · Santiago Trujillo
3 Respostas
Responde à pergunta

0

Estoy usando loopback versión 2.xx Resulta ser muy simple

 currentModel.app.models.modelYouWantToAccess
over 4 years ago · Santiago Trujillo Relatório

0

Prueba con abajo

 var employee_data = Employee .filter(x => User.map(y => y.accountId).includes(x.accountId));
over 4 years ago · Santiago Trujillo Relatório

0

Supongo que está usando mangosta y tiene esta parte en su modelo de User :

 accountId: { type: mongoose.Schema.ObjectId, ref: 'Employee', required: [true, 'this field must be provided'] },

Puede agregar un método de llenado a su esquema para que los datos del modelo relacionado se agreguen cada vez que solicite datos con populate User.find(), findOne, y todos los demás métodos que comienzan con 'buscar'

 userSchema.pre(/^find/, function(next) { this.populate({ path: 'accountId', options: { // you can populate only some fields if you want select: 'name company jobTitle' } }) next() })

Luego, puede usar su modelo de User como siempre, pero ahora se agregan los datos de Employee relacionados:

 const given_id = "65465458qw7d7q1q7w1x" const user = await User.findOne({accountId: given_id}) // Note: you can use User.find if there can be // more than one user with that accountId.
over 4 years ago · Santiago Trujillo Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda