CakePHP: AppController для доступа к модели производного контроллера

Я хочу реализовать общие действия «добавить» в AppController. Для этого мне нужно получить доступ к соответствующей модели производного контроллера.

Как мне это сделать?


person blinry    schedule 13.01.2010    source источник


Ответы (1)


Основной класс модели контроллера хранится в $this->modelClass, поэтому вы можете сделать что-то вроде этого:

class AppController extends Controller {
    function _add($data) {
        $this->{$this->modelClass}->save($data);
    }
}

class PostController extends AppController {
    function someFunction() {
        $this->_add($data);  // saves to Post model
    }
}
person deceze♦    schedule 13.01.2010