Controlador dentro de outro controlador
Pergunta
É possível instanciar uma classe controladora em outra classe de controlador usando a estrutura YII
Por exemplo, tenho o aluno do controlador e o método de ação do aluno da turma, tenho o seguinte
public function actionShow()
{
$student = $this->loadStudent();
$studentContact = new Student_ContactController;
//Checking if there was an ajax request
if(Yii::app()->request->isAjaxRequest){
$this->renderPartial('show',array(
'student'=>$student,
));
}else{
$this->render('show',array(
'student'=>$student,
));
}
}
É possível incluir essa ação no método $ studentContact = new student_contactController;
Obtendo erros, :-(
Solução
Não conheço a estrutura YII, mas como é uma estrutura MVC, obtendo dados deve fazer parte do modelo; portanto, o $ StudentContact deve ser uma instância de um modelo, não de um controlador.
Se você realmente deseja instanciar uma instância de um controlador, ligue para o construtor com colchetes:
$studentContact = new Student_ContactController();
Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow