Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

391
Vistas
Secuela incluyen incluso si es nulo

Estoy usando Sequelize express con Node.js como back-end, algunos datos de mi secuencia deben incluirse en otra tabla, pero algunos de estos datos son nulos, por lo que el resultado total que obtengo es nulo.

Pregunta: ¿cómo puedo devolver algunos datos si los datos están disponibles y devolver el otro valor nulo si no hay datos?

 router.get("/scheduled/:id", function(req, res, next) { models.Order.findOne({ where: { id: req.params.id }, attributes: ['orderStatus', 'id', 'serviceId', 'orderDescription', 'orderScheduledDate'], include: [{ model: models.User, attributes: ['firstName', 'phoneNumber'] }] }).then(function(data) { res.status(200).send({ data: data, serviceName: data["serviceId"] }); }); });

Quiero: el resultado debe devolver nulo si no hay un usuario para el pedido y devolver los detalles del pedido y el usuario cuando es nulo.

about 4 years ago · Santiago Trujillo
2 Respuestas
Responde la pregunta

0

Sin embargo, una cláusula where en un modelo relacionado creará una inner join y devolverá solo las instancias que tienen submodelos coincidentes. Para devolver todas las instancias principales, debe agregar required: false para obtener más detalles, verifique la carga anidada anidada

 var users = require('./database/models').user; models.Order.findOne({ where: { id: req.params.id },attributes: ['orderStatus','id','serviceId','orderDescription','orderScheduledDate'], include: [ {model: users,required: false, attributes: ['firstName','phoneNumber'] } ] }).then(function(data) { res.status(200).send({data : data,serviceName : data["serviceId"]}); });
about 4 years ago · Santiago Trujillo Denunciar

0

Puede agregar el atributo required: false,

 const result = await company.findAndCountAll({ where: conditions, distinct: true, include: [ media, { model: tag, where: tagCond, }, { model: users, where: userCond, attributes: ['id'] }, { model: category_company, as: 'categoryCompany', where: categoryCond, }, { model: media, as: 'logoInfo' }, { model: city, as: 'city' }, { model: employee, as: 'employees', required: false, include: [{ model: media, as: 'avatarInfo', }], where: { publish: { [Op.ne]: -1, }, }, }, ], order: [['createdAt', 'DESC']], ...paginate({ currentPage: page, pageSize: limit }), });
about 4 years ago · Santiago Trujillo Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda