我在 cakephp 模型中有以下函数:
/**
*
* saveMany without MeioUpload validations
*
*/
public function saveManyDataOnly($data) {
// since creating records without files,
// we need to detach the behavior
$this->Behaviors->unload('MeioUpload.MeioUpload');
$result = $this->saveMany($data);
$this->Behaviors->load('MeioUpload.MeioUpload');
return $result;
}
我也需要同样的东西来保存和保存关联。
同样,我的意思是我需要在分别调用 save 和 saveAssociated 后卸载然后重新加载行为。
我不希望使用回调 beforeSave 和 afterSave。
添加:
我也不希望覆盖 save 和 saveAssociated 方法。
原因是有时我想在加载行为的情况下使用 save、saveAssociated、saveMany。
我有时想卸载行为的主要原因是因为在某些情况下,当我执行 save、saveAssociated 或 saveMany 时,由行为触发的验证和回调是不可取的
我当然可以简单地再写 2 个函数,但我相信应该有一种方法可以使用 call_user_func 来完成相同的目标,而无需编写更多代码。
帮助我了解如何编写此类代码以及如何调用新函数。