我想问一下我的问题。在此之前,我想告诉你我做了什么,我有RenunganHarianController
而我这样做actionIndex
。我想将未登录的用户呈现为登录表单
public function actionIndex()
{
$model = new LoginForm();
//check user Guest or not
if(Yii::$app->user->isGuest) {
return $this->render('/site/login', [
'model' => $model,
]);
}
$searchModel = new RenunganHarianSearch();
$dataProvider = $searchModel->search(Yii::$app->request->queryParams);
return $this->render('index', [
'searchModel' => $searchModel,
'dataProvider' => $dataProvider,
]);
}
这是有效的,但是当我尝试从该控制器呈现的“LoginForm”登录时,我无法登录,但如果我尝试从正常方式登录,我可以这样做。请帮帮我,谢谢
答案 0 :(得分:0)
我猜你在site/login
视图中有一个ActiveForm
没有采取任何具体行动。如果是这样,则表单的操作与您调用的相同网址yourcontroller/index
(您发布的actionIndex
)相同。问题是你在该操作中没有逻辑来处理te登录过程,我想这是在SiteController
,actionLogin
。你有两个选择:
site/login
,以便在actionIndex
site/login
视图中,将表单的操作指定为Url::to('/site/login')
是的,请按照建议不要像在标题中那样使用大写字母。