繁体   English   中英

Cakephp行为错误的模型

[英]Cakephp Behavior wrong model

我正在写一个行为

<?php

class LogsBehavior extends ModelBehavior {


        public $Model;

        public function setup(Model $model, $config = array()) {
            $this->Model = $model;
        }

        public function afterSave(Model $Model, $created, array $options = array()) {

            pr($this->Model);
            exit;


        }

}

好的,所以当我检查$ model中的设置方法时:

Comprovante Object
(...)

当我保存条目并到达afterSave方法时,$ Model属性为

Comprovante Object
    (...)

但是我的$ this-> Model是:

Cliente Object

似乎先前的对象不是Comprovante ...

有人可以帮我吗?

Comprovante.php

public $actsAs = array('Logs');

由于上面概述的原因,您可能不能在此处使用共享属性。

始终提供作为第一个参数传递给模型的方法:

public function someMethod(Model $Model, ...) {
    $this->_someMethod($Model, ...);
}

protected function _someMethod(Model $Model, ...) {}

等等

了解当前的核心和(受欢迎!)插件/用户态行为是如何做到的,以及如何使用它们的行为方式。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM