我正在努力让我的 Behavior 类在回调中使用对象实例。
class SomethingBehavior extends ModelBehavior
{
public function setObject($obj)
{
// do stuff
}
public function afterFind(Model $model,$results,$primary)
{
// use the $obj reference set above
}
}
现在我需要模型类在执行任何查找操作之前调用 setObject(..)。所以理想情况下,我只会在构造函数中分配我需要的对象。
class Document extends AppModel
{
//.....
public function __construct($id,$table,$ids)
{
parent::__construct($id,$table,$ds);
$this->Something->setObject(new MyClass());
}
}
我的问题是尚未配置 Behavior 对象,并且在尝试使用它时出现 not an object 错误。
我在组件中找不到任何模型的回调方法。例如,没有setup
或initialize
方法。
如何将我需要的对象分配给行为?