2

考虑我的集合在MongoDB中存储如下:

  { 
    _id: 'Unique_Value',
    FieldMONGO1: 'ngfn',
    FieldMONGO2: { SomeKey: ['val1','val2','val...']  },
  }

当我在 Mongoose 的模型实例上使用 find 方法检索时。我得到以下JSON 输出

  { 
    _id: 'Unique_Value',
    FieldMONGO1: 'NAME_value',
    FieldMONGO2: { SomeKey: ['val1','val2','val...']  },
  }

两者完全相同。

问题:有什么方法可以更改字段名称,例如FieldMONGO1to FirstNameFieldMONGO2to NewName& _idto IdentityNo

所以我的输出将是这样的:

  { 
    IdentityNo: 'Unique_Value',
    FirstName: 'ngfn',
    NewName: { SomeKey: []  },
  }

知道解决方案:是按原样获取 JSON 输出,然后在 Node.js 代码中更改字段(属性)名称。但这里的问题是,它变成了一个阻塞代码。如果请求大量数据,这可能会在服务器上产生开销。

谁能帮我找出一些有效的方法来做同样的事情?

提前谢谢

4

1 回答 1

5

Virtuals猫鼬中退房。

查看参考链接中的示例。

如果你像这样调整

urSchema.virtual('FirstName').get(function () {
  return this.FieldMONGO1;
});

你能行的。

检查这个答案

于 2013-02-07T13:19:02.053 回答