json - 如何从 MongoDB + Node.js + Mongoose 获取修改后的 json 输出

标签 json node.js mongodb mongoose

考虑我的集合在 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...']  },
  }

两者完全相同。

问题:有什么办法可以将字段名称(如 FieldMONGO1)更改为 FirstNameFieldMONGO2 > 到 NewName & _idIdentityNo

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

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

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

有人可以帮我找到一些有效的方法吗?

提前致谢

最佳答案

查看mongoose中的Virtuals

查看引用链接中的示例。

如果你像这样调整

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

你能做到。

检查this answer就这样。

关于json - 如何从 MongoDB + Node.js + Mongoose 获取修改后的 json 输出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14751835/

相关文章:

node.js - 如何在不使用位置运算符 $ 的情况下更新 mongodb 文档中数组中的嵌套文档?

javascript - json html 的安全方法?

javascript - 简单的 Node.js 程序占用所有系统内存并永远将 XMLHttpRequest 文件缓冲区写入磁盘

javascript - 无法将对象转换为原始值

mongodb - 如何使用 GridFS 使用 Node.js 和 Mongoose 存储图像

node.js - 按页面大小 10 获取所有文章,每篇文章填充一些所需的用户信息

java - 使用 java 8 集合和流解析 JSON 对象的多个字段并添加到列表中

java - 如何使用 Java (Bing-Search-API) 从 JSON 访问嵌套元素

android - 从 JSON 分页文件 Android 在 AsyncTask 中加载第 2、3、4 页

c# - Visual Studio 2015 100% 的 CPU 使用率与 Node