FreeTibet
@FreeTibet
dharma supplier

Yii2: Class 'ActiveForm' not found?

Итак, проблема в следующем:
В siteController есть action

public function actionProfile()
    {
        if (Yii::$app->user->isGuest) {
            return $this->goHome();
        }
        $model = new ProfileForm();
        $fields = $model->loadProfileData($language);
        return $this->render('user-profile', array(
            'fields'=>$fields,
            'model'=>$model,
        ));
    }


Тут все отлично работает.

Далее есть дополнительный контроллер обслуживающий страницу user profile, в котором есть action save, который вызывается через ajax запрос (при нажатии кнопки save) и рендерит ту же самую вьюху, что и экшен в siteController.
Однако, при рендере я получаю ошибку Class 'ActiveForm' not found?
Кто-нибудь, может подсказать почему так происходит?

Вот код дополнительного контроллера:
class ProfileController extends Controller {

 public function actionSave()
    {
         if (Yii::$app->user->isGuest) {
            return $this->goHome();
        }
        $request = Yii::$app->getRequest();
        $model = new ProfileForm();
        if ($request->isPost && $model->load($request->post())) {
            $fields = $model->loadProfileData($language);
            $message = "Your profile data has been saved";
            return $this->render('user-profile', array(
                    'fields' => $fields,
                    'model' => $model,
                    'message' => $message
            ));
        }
    }
  • Вопрос задан
  • 547 просмотров
Пригласить эксперта
Ответы на вопрос 1
@masterfreelance
программист со стажем
и рендерит ту же самую вьюху, что и экшен в siteController.

Нет, не ту же самую. Контроллер ProfileController рендерит вьюшку расположенную в @app/views/profile/user-profile.php
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы