当前位置: 首页 > 知识库问答 >
问题:

如何从Mongoose模式中的嵌入对象中删除_id?[副本]

颛孙英才
2023-03-14

我有一个猫鼬图式:

const User = mongoose.model('User', new Schema({
    id: String,
    name: String,
    extra: { bb: Number, chain: Number }
}), 'users');

当我看到一个新的用户时,它是这样存储的:

{ 
  _id: ...,
  id: '1234',
  name: 'John',
  extra: {
    _id: ...,
    bb: 54,
    chain: 7
  },
  __v: 1
}

共有1个答案

居飞扬
2023-03-14

您可以为子模式声明“_id:false”,如下所示。

const User = mongoose.model('User', new Schema({
     id: String,
     name: String,
     extra: { bb: Number, chain: Number, _id: false }
}), 'users');
 类似资料:
  • 我是mongoDB新手,在使用Mongoose从mongoDB中的数组中删除团队对象时遇到困难。我的用户收藏看起来像; 我的移除路线看起来像; 控制台在用户之前和之后记录日志。更新是完全相同的,我没有得到任何错误抛出。控制台的输出。日志(错误、数据)最终被删除 我不知道该怎么解释。我也尝试过不按这里的建议传入userID;https://stackoverflow.com/a/24289161/5

  • 我正在使用javascript定义对象数组,并希望根据对象属性删除值。 我用了下面的代码: 预期结果:当我删除值时,它应该给我一个包含0个元素的数组。 实际输出:当我删除值时,我得到的数组有1个元素,元素值为null。

  • 我正在尝试从对象数组中删除属性。 我希望var2包含这样的内容。 是否有方法将/cast转换为上述内容?换句话说,我想从对象数组中删除,并将其分配给。我该怎么做?

  • 我知道有人问过这个问题,但我想在直接修改数据库中找到答案,但在这种情况下,我想从用户对象中删除密码,这样密码就不会发送到前端,但是不起作用,尽管是一个对象。 任何想法!!我在用猫鼬

  • 问题内容: 我有一个包含一些对象的对象,例如,每个对象都有一个and 属性。如何从其中仅删除具有特定“名称” 的对象? 问题答案: 您可以使用如下形式:

  • 问题内容: 我对mongo和nodejs相当陌生,由于查询的结果是json,我只想将结果作为http请求返回,如下所示: 它有效,唯一的问题是我想从结果中隐藏_id字段(递归)。有建议以优雅的方式做到这一点吗? 问题答案: 试试这个解决方案: