mongoose 是否可以使用不同的名称(在我的情况下为大写“ID”)作为模式 _id 字段的别名?我需要添加一个虚拟还是有另一种设置方式?
任何帮助都非常感谢。
您将为此使用虚拟属性。如:
yourSchema.virtual('ID').get(function() { return this._id; });
最简单的方法是alias
在模式中指定:
let s = new Schema({
_id: { type: String, alias: "ID" }
});
这会自动创建 getter 和 setter,因此可以在ID
任何地方使用而不是_id
.
根据v5.11.9
mongoose 文档,mongoose默认为您的每个模式分配一个 id virtual getter,它返回文档的_id
字段