我的LoginController类是从UserController扩展而来的。我想ovverride UserController的一种方法。一切正常,但$ this-> render('index')调用子类的视图。我想调用父类的视图。我曾尝试使用parent :: render('index'),但是它也不工作。这里是我的代码在子类中呈现父类视图
<?php
namespace frontend\controllers;
use Yii;
use mdm\admin\models\form\Login;
use mdm\admin\models\form\PasswordResetRequest;
use mdm\admin\models\form\ResetPassword;
use mdm\admin\models\form\Signup;
use mdm\admin\models\form\ChangePassword;
use mdm\admin\models\User;
use mdm\admin\models\searchs\User as UserSearch;
use yii\web\Controller;
use yii\filters\VerbFilter;
use yii\filters\AccessControl;
use yii\web\NotFoundHttpException;
use yii\base\UserException;
use yii\mail\BaseMailer;
use mdm\admin\controllers\UserController;
class LoginController extends UserController
{
public function actionLogin()
{
//parent::actionLogin();
if (!Yii::$app->getUser()->isGuest) {
return $this->goHome();
}
$model = new Login();
if ($model->load(Yii::$app->getRequest()->post()) && $model->login()) {
return $this->goBack();
} else {
return parent::render('login', [
'model' => $model,
]);
}
}
}
但我的观点是,它应该调用父类的观点,而不是在子类中寻找它。我在这里错过了什么?
它仍然在前端/视图中查找文件,而不是查看供应商文件夹中的父类的文件 – james
正确的,已更正的答案。 – Bizley
它不在前端,而是在供应商文件夹中。而通过完整的路径或复制前端的视图文件肯定会奏效。但是我想要的是$ this,它调用当前类上下文中的渲染,并且我想在父类上下文中调用渲染。可能吗? – james