cambiar el nombre de la clave en la respuesta de mangosta

Asad Hayat

Estoy usando NodeJS y mongoose .

Tengo dos colecciones denominadas perfiles y empresas con el siguiente esquema.

ProfileSchema = new Schema ({
    first_name: {type: String, required: true},
    last_name: {type: String, required: true},
    age: {type: Number, required: true},
    business_ids: [
         {type: schema.Types.ObjectId, ref: 'business'}
    ]
});

Similar,

BusinessSchema = new Schema ({
        title: {type: String, required: true},
        type: {type: String, required: true},
        address: {type: String, required: true},        
    });

Una respuesta de muestra cuando mi perfil de consulta es

profiles.find().populate("business_ids")   

devoluciones

{
  "_id": "5bf5fbef16a06667027eecc2",
  "first_name": "Asad",
  "last_name": "Hayat",
  "age": "26",
  "business_ids": [
    {
      "_id": "5ae14d2e124da839884ff939",
      "title": "Business 1",
      "type": "B Type",
      "address": "Business 1 Address"
    },
    {
      "_id": "5ae14d2e124da839884ff93b",
      "title": "Business 2",
      "type": "C Type",
      "address": "Business 2 Address"
    }
  ],
  "__v": 0
}

Quiero que el campo business_ids siga siendo el mismo en la colección, pero cámbiele el nombre a empresas en mis respuestas a la consulta. Cómo puedo conseguir esto.

Mohammed Yousry

puede usar la canalización agregada con en $lookuplugar de buscar con poblar

algo como esto

db.profile.aggregate([
  {
    $lookup: {
      from: "business",
      localField: "business_ids",
      foreignField: "_id",
      as: "businesses"
    }
  },
  {
    $project: {
      business_ids: 0 // this is to remove the business_ids array of ObjectIds, if you want to keep it, you can omit this $project step
    }
  }
])

puedes probarlo aquí Mongo Playground

Espero eso ayude

Este artículo se recopila de Internet, indique la fuente cuando se vuelva a imprimir.

En caso de infracción, por favor [email protected] Eliminar

Editado en
0

Déjame decir algunas palabras

0Comentarios
Iniciar sesiónRevisión de participación posterior

Artículos relacionados

Cambiar el nombre de la clave defaultdict en Python

Cambiar el nombre de la clave en JSON anidado mysql

respuesta de grupo sql por clave al cambiar el nombre de la columna a un valor

Afirmar el nombre de la clave en la respuesta json usando groovy

Cambiar el estilo de la casilla de verificación en el nombre en clave uno

cómo cambiar el nombre de la respuesta de datos de objetos en React

Cambiar el nombre de la clave de Python en una lista de diccionarios no idénticos a otro nombre de clave

No se puede cambiar el nombre de la respuesta en la acción redux

React Redux cambiar el nombre del objeto anidado en la respuesta de la API

No se puede cambiar el nombre de la respuesta en la acción redux

Fusionar algunos elementos de la matriz en otra matriz y cambiar el nombre de la clave

Cambiar el valor json sin el nombre de la clave

PHP cambiar el nombre de la clave en la matriz asociativa

cómo cambiar el nombre del campo `key` al valor de la clave en el diccionario

¿Cómo cambiar el nombre de la clave precisaDiff en el momento-zona horaria?

Cómo cambiar el nombre de la clave para el objeto JSON anidado en Python

¿Cómo cambiar el nombre de la clave para QMap?

Cambiar el nombre de la clave de objeto en una matriz usando javascript

Cómo cambiar el nombre de la clave de un objeto en una matriz

Cambiar el nombre de la columna de clave externa en rieles

Cómo cambiar el nombre de la clave de un objeto en una matriz

La salida de respuesta no muestra toda la información presente en el esquema de mangosta nodejs

Javascript: fusionar / cambiar el nombre de objetos similares en una matriz por la misma clave / valor

Javascript: fusionar / cambiar el nombre de objetos similares en una matriz por la misma clave / valor

Cómo cambiar el nombre de la clave hstore en Rails + Postgres

Cambiar el nombre de la clave resultante en cube.js

Cómo cambiar el nombre de la clave API en Serverside ExpressJs

¿Cómo puedo cambiar el nombre db_column de la clave externa en Django?

No se puede mostrar la respuesta de la llamada a los servicios web en el nombre en clave uno