【发布时间】:2013-05-16 19:02:59
【问题描述】:
我的应用程序中有一些场景需要在保存数据之前对其进行操作。
我有 CakePHP 背景,所以我通常会在模型的 beforeSave 方法中执行此操作。
我可以在 geddy 中的模型中做任何等效的事情吗?
【问题讨论】:
我的应用程序中有一些场景需要在保存数据之前对其进行操作。
我有 CakePHP 背景,所以我通常会在模型的 beforeSave 方法中执行此操作。
我可以在 geddy 中的模型中做任何等效的事情吗?
【问题讨论】:
查看Model events。
基础模型“构造函数”和模型实例都是 事件发射器。创建/更新/删除期间的发出事件 模型实例的生命周期。在所有情况下,明文命名的事件都是 在有问题的事件和带有'before'前缀的事件之后触发 当然发生在之前。
模型的“构造函数”发出以下事件:
- 创建前
- 创建
- 验证前
- 验证
- 更新前属性
- 更新属性
- beforeSave(新实例,单个和批量)
- 保存(新实例,单个和批量)
- beforeUpdate(现有单实例,批量更新)
- 更新(现有单个实例,批量更新)
- beforeRemove 删除
例如:
var MyModel = function () { ... };
MyModel = geddy.model.register('MyModel', MyModel);
MyModel.on('beforeSave', function(data){
console.log(data);
})
【讨论】:
beforeSave 事件中尝试记录this 或arguments 以查看您要操作的item 的位置。让我知道你的进展:)