我的应用程序中有一些场景需要在保存数据之前对其进行操作。
我有 CakePHP 背景,所以我通常会在模型的 beforeSave 方法中执行此操作。
我可以在 geddy 的模型中做任何等效的事情吗?
查看模型事件。
基本模型“构造函数”和模型实例都是 EventEmitters。在模型实例的创建/更新/删除生命周期中发出事件。在所有情况下,明文命名的事件都会在相关事件之后触发,而带有'before'前缀的事件当然会发生在之前。
模型的“构造函数”发出以下事件:
- 之前创建
- 创造
- 验证前
- 证实
- beforeUpdate 属性
- 更新属性
- beforeSave(新实例,单个和批量)
- 保存(新实例,单个和批量)
- beforeUpdate(现有的单个实例,批量更新)
- 更新(现有的单个实例,批量更新)
- beforeRemove 移除
例如:
var MyModel = function () { ... };
MyModel = geddy.model.register('MyModel', MyModel);
MyModel.on('beforeSave', function(data){
console.log(data);
})