Использовать модель в компоненте Как использовать модель в компоненте в CakePHP? В контроллере вы можете использовать public $uses = array(...); но это не работает в компоненте. Что делает? Ответ 1 Попробуйте этот код: $model = ClassRegistry::init('Yourmodel'); Простой запрос с вашей моделью в ваш компонент $result= $model->find('all'); Ответ 2 Вы можете сделать это следующим образом: $this->ModelName = ClassRegistry::init('ModelName'); Но предполагается, что вы не используете модели внутри компонентов. Ответ 3 Если вам нужна текущая модель, вы можете использовать initialize() или startup() обратного вызова компонента. public function initialize(Controller $controller) { $this->Controller = $controller; $this->Model = $this->Controller->{$this->Controller->modelClass}; $this->modelAlias = $this->Model->alias; parent::initialize($controller); } Теперь вы можете получить доступ к модели во всем своем компоненте. public function countAllItems() { return $this->Model->find('count'); }
Ответ 1 Попробуйте этот код: $model = ClassRegistry::init('Yourmodel'); Простой запрос с вашей моделью в ваш компонент $result= $model->find('all');
Ответ 2 Вы можете сделать это следующим образом: $this->ModelName = ClassRegistry::init('ModelName'); Но предполагается, что вы не используете модели внутри компонентов.
Ответ 3 Если вам нужна текущая модель, вы можете использовать initialize() или startup() обратного вызова компонента. public function initialize(Controller $controller) { $this->Controller = $controller; $this->Model = $this->Controller->{$this->Controller->modelClass}; $this->modelAlias = $this->Model->alias; parent::initialize($controller); } Теперь вы можете получить доступ к модели во всем своем компоненте. public function countAllItems() { return $this->Model->find('count'); }