Я хочу реализовать общие действия «добавить» в AppController. Для этого мне нужно получить доступ к соответствующей модели производного контроллера.
Как мне это сделать?
Я хочу реализовать общие действия «добавить» в AppController. Для этого мне нужно получить доступ к соответствующей модели производного контроллера.
Как мне это сделать?
Основной класс модели контроллера хранится в $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
}
}