Yii2 注册后如何注销用户?
挑战是在登录表单上注册后重定向用户。无论发生什么冲突,注册后都必须注销。试图在控制器中使用此代码,但无效Yii2 注册后如何注销用户?,yii2,Yii2,挑战是在登录表单上注册后重定向用户。无论发生什么冲突,注册后都必须注销。试图在控制器中使用此代码,但无效 public function actionSignup() { $model = new SignupForm(); if ($model->load(Yii::$app->request->post())) { if ($user = $model->signup()) { Yii::$app-&g
public function actionSignup()
{
$model = new SignupForm();
if ($model->load(Yii::$app->request->post())) {
if ($user = $model->signup()) {
Yii::$app->user->logout();
if (Yii::$app->getUser()->login($user)) {
return $this->goHome();
}
}
}
return $this->render('signup', [
'model' => $model,
]);
}
试试这个,我希望这会对你有所帮助。谢谢你那么你在从函数返回后试图调用
logout()
-函数?我想你自己也能看出这是行不通的?嗯,我被纠正了,但仍然不起作用是的,因为现在你在调用logout()
函数之后调用了login()
函数。我仍然不明白你为什么要这么做,但是你的注销呼叫需要进入if
,就在返回$this->goHome()之前代码>如果您想将用户重定向到登录表单,那么只需在注销调用后将其重定向到登录操作即可。为什么在那之后要调用登录函数?
siteController.php
public function actionSignup()
{
$model = new SignupForm();
if ($model->load(Yii::$app->request->post())) {
if ($user = $model->signup()) {
return $this->goHome();
}
}