я создал функцию в моей AppController в sendemails:CakePHP: Модели в AppController
protected function sendEmail($studentId = null, $courseId = null, $action = null) {
$course = $this->Course->find('first', array('conditions' => array('Course.id' => $courseId)));
if(! $course) {
throw new NotFoundException(__('Invalid course'));
}
}
Я хочу, чтобы проверить ход и ученика, но в зависимости от того, какой контроллер я называю его от, я должен изменить my $ this-> xxx-> find. Единственное другое решение, которое я придумал, - это проверка/отправка заголовка данных курса $ course/$ student, но я все же хотел бы запустить ручной SQL-запрос для сохранения журнала электронной почты (я бы столкнулся с тем же проблема). Любая помощь?
Если я правильно понимаю; просто загрузите модель «Курс» в свой «AppController». У каждого контроллера будет доступ к нему. Таким образом, любой контроллер сможет вызвать функцию. '$ this-> loadModel ('Course');' в функции 'sendEmail' должен это делать. – Ross