如何在yii2的索引页上部分调用登录页

如何在yii2的索引页上部分调用登录页,yii2,Yii2,我想部分调用site/index.php上的site/login页面。 因此,我在site/index.php中编码如下: if (Yii::$app->user->isGuest) { return $this->render('/site/login', [ 'model' => $model, ])); } 和现场控制器 $model = new LoginForm(); return $this->render('index', [

我想部分调用site/index.php上的site/login页面。 因此,我在site/index.php中编码如下:

 if (Yii::$app->user->isGuest) {
return $this->render('/site/login', [
'model' => $model,
])); }

和现场控制器

$model = new LoginForm();

return $this->render('index', [
                'model' => $model,
            ]); 
我出错了 PHP通知–yii\base\ErrorException


未定义变量:model

我不确定是否理解,但您的问题看起来像

if (Yii::$app->user->isGuest) {
return $this->render('/site/login', [
'model' => $model,
]); }

这里的型号是什么?

我想你要做:

  • 登录用户以查看-索引页
  • 要访问的未登录用户-登录页面
没什么可写的。 管理控制器中的代码以呈现所需的视图

因此,控制器代码必须如下所示:

$model = new LoginForm();
     if(isset(Yii::$app->user->isGuest)){
          return $this->render('login', [
                   'model' => $model,//Model is the user active record
                 ]);//render the view file located in **site folder** login.php **view file**
     }
    $model = Users::findOne(yii::$app->user->id);//model is the users model used to display controls in index.php view
    return $this->render('/site/index', ['model' => $model]);
希望这有帮助