1
나는 플러그인이로드 된 다음 플러그인을 사용하여 모델에 첨부하면 더 많은 플러그인을 확인하려고하는 모델이 있습니다. 이 방법을 사용하고 있습니까? 그러나 모델과 액션이 다른 결과를 가져옵니다. 플러그인 검사를 위해 더 많이 바인딩하는 것보다 다른 방법이 더 좋습니다.cakephp 첨부 더
class Comment extends AppModel {
/**
* @see Model::$belongsTo
*/
public $belongsTo = array(
'Content' => array(
'className' => 'Content',
'foreignKey' => 'object_id',
'conditions' => array(
'Comment.object_id = Content.id',
)
),
);
/**
* @see Model::__construct
*/
public function __construct($id = false, $table = null, $ds = null) {
// parent
parent::__construct($id, $table, $ds);
// check for newsstudio
if (CakePlugin::loaded('NewModel')) {
$this->bindModel(
array('belongsTo' => array(
'NewModel' => array(
'className' => 'NewModel.NewModel',
'foreignKey' => 'object_id',
'conditions' => array(
'Comment.object_id = NewModel.id',
)
)
)
));
}
var_dump($this->belongsTo); // correct! NewModel added to blongsto
}
}
// but in action during use. Plugin loaded but
var_dump($this->Comment->belongsTo); // incorrect! just `Content` added