Контроллер внутри другого контроллера

StackOverflow https://stackoverflow.com/questions/1599782

  •  22-09-2019
  •  | 
  •  

Вопрос

Можно ли создать экземпляр класса контроллера внутри другого класса контроллера с помощью Yii Framework?

Например, у меня есть контроллер Student и метод actionShow ученика класса. У меня есть следующее:

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,
            ));
        }



    }

Можно ли включить это действие в метод $studentContact = new Student_ContactController;

Возникают ошибки, :-(

Это было полезно?

Решение

Я не знаю фреймворк Yii, но поскольку это фреймворк MVC, то получение данных должно быть частью модели, поэтому $studentContact должен быть экземпляром модели, а не контроллера.

Если вы действительно хотите создать экземпляр контроллера, вызовите конструктор с скобками:

    $studentContact = new Student_ContactController();
Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top