gpt4 book ai didi

node.js - Mongoose 模式/模型中的自定义构造函数

转载 作者:IT老高 更新时间:2023-10-28 23:10:37 26 4
gpt4 key购买 nike

大家好!

我如下定义了一个 Mongoose 模式并注册了一个模型 (InventoryItemModel)。有没有办法为模式创建自定义构造函数,这样当我从模型中实例化一个对象时,该函数将被调用(例如,从数据库中加载具有值的对象)?

var mongoose = require('mongoose')
, Schema = mongoose.Schema

var InventoryItemSchema = new Schema({
Sku : String
, Quanity : Number
, Description : String
, Carted : []
, CreatedDate : {type : Date, default : Date.now}
, ModifiedDate : {type : Date, default : Date.now}
});

mongoose.model('InventoryItem', InventoryItemSchema);

var item = new InventoryItem();

我可以添加一些自定义构造函数,以便在实例化时从数据库中填充项目吗?

最佳答案

根据你想走的方向,你可以:

1) 使用 Hooks

在模型初始化、验证、保存和删除时会自动触发 Hook 。这是“由内而外”的解决方案。您可以在此处查看文档:

2) 为您的架构编写静态创建函数。

静态存在于您的模型对象上,可用于替换创建新模型等功能。如果您的 create 步骤有额外的逻辑,您可以在静态函数中自己编写。这是“由外而内”的解决方案:

关于node.js - Mongoose 模式/模型中的自定义构造函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14217067/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com