【问题标题】:mongoose (mongodb) Alias _id field猫鼬(mongodb)别名_id字段
【发布时间】:2012-05-08 23:05:24
【问题描述】:

mongoose 是否可以使用不同的名称(在我的情况下为大写“ID”)作为模式 _id 字段的别名? 我需要添加一个虚拟还是有其他设置方法?

任何帮助都非常感谢。

【问题讨论】:

标签: mongodb mongoose


【解决方案1】:

您可以为此使用virtual attribute。如:

yourSchema.virtual('ID').get(function() { return this._id; });

【讨论】:

    【解决方案2】:

    最简单的方法是在架构中指定alias:

    let s = new Schema({
        _id: { type: String, alias: "ID" }
    });
    

    这会自动创建 getter 和 setter,因此可以在任何地方使用 ID 而不是 _id。

    Mongoose documentation on aliases

    【讨论】:

      【解决方案3】:

      基于 v5.11.9 mongoose 文档看起来像 mongoose 分配了您的每个 schemas an id virtual getter by default,它返回文档的 _id 字段

      【讨论】:

        猜你喜欢
        • 2015-06-07
        • 2021-04-18
        • 2018-06-15
        • 2013-06-19
        • 2016-11-12
        • 1970-01-01
        • 2012-03-30
        • 2013-03-21
        相关资源
        最近更新 更多