Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/swift/18.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Cakephp 插入前和删除后_Cakephp_Models_After Save - Fatal编程技术网

Cakephp 插入前和删除后

Cakephp 插入前和删除后,cakephp,models,after-save,Cakephp,Models,After Save,不知何故,我又迷失在了我的初学者项目中。我正在为有起飞和着陆时间的航班添加记录。因此,每次我插入一个航班订单或删除它(编辑是另一个问题),我想更新特定飞机(不同型号)的机身总时间。现在出现了一些问题,比如我是否应该在我的模型中使用afterSave/beforeDelete函数,或者是否应该以任何其他方式(例如mysql触发器,甚至是在我的控制器中)执行此操作 我的主要问题是,我试图在afterSave()和beforeDelete调用中收集所需的所有信息,但我不知道如何在那里访问数据。特别是在

不知何故,我又迷失在了我的初学者项目中。我正在为有起飞和着陆时间的航班添加记录。因此,每次我插入一个航班订单或删除它(编辑是另一个问题),我想更新特定飞机(不同型号)的机身总时间。现在出现了一些问题,比如我是否应该在我的模型中使用afterSave/beforeDelete函数,或者是否应该以任何其他方式(例如mysql触发器,甚至是在我的控制器中)执行此操作

我的主要问题是,我试图在afterSave()和beforeDelete调用中收集所需的所有信息,但我不知道如何在那里访问数据。特别是在beforeDelete()调用中,$this->data数组是空的,因此我无法计算从机身总时间中减去的时间量

所以我的问题的核心是更一般的性质,如果这真的是正确的方法的话。我脑海中浮现的另一件事是,如果两者之间出现问题,我担心会有一个不合适的飞行时间,但已经删除了飞行记录

我正在考虑使用存储过程或其他方式来实现它

非常感谢您阅读本文,也许还有一个更愚蠢的方法

致以最良好的祝愿


cdjw

看看计数器缓存在内核中是如何工作的,听起来这就是您需要做的。这一切都发生在模型回调中


仔细查看代码,看看这在哪里被称为

oha!非常感谢你的帮助。我一直在看错误的部分和地方。帮了大忙!