YII2重定向从前端用户登记后到后端(YII2 Redirect to backend after

2019-10-22 20:02发布

在yii2提前安装模板后,我得到了一个用户注册从前端,但我想它重定向登记后到后端。 那怎么可以做???

public function actionSignup()
{
    $model = new SignupForm();
    if ($model->load(Yii::$app->request->post())) {
        if ($user = $model->signup()) {
            if (Yii::$app->getUser()->login($user)) {
                return $this->goHome(); // I WANT TO CHANGE THIS TO REDIRECT TO LOCALHOST/MYAPP/BACKEND/WEB
            }
        }
    }

    return $this->render('signup', [
        'model' => $model,
    ]);
}

在这里更新是urlmanager

    'urlManager' => [
    'class' => 'yii\web\urlManager',
    'showScriptName' => false,
    ],
    'urlManagerBackend' => [
        'class' => 'yii\web\urlManager',
        'showScriptName' => false,
        'baseUrl' => 'http://localhost/ncddp/backend/web/index.php',
    ],

Answer 1:

您可以配置单独的urlManager在组件frontendbackend

'urlManager' => [
    'class' => 'yii\web\urlManager',
    'enablePrettyUrl' => true,
    'showScriptName' => false,
],
'urlManagerBackend' => [
    'class' => 'yii\web\urlManager',
    'enablePrettyUrl' => true,
    'showScriptName' => false,
    'baseUrl' => 'http://admin.site.com',
],

放入components部分应用程序配置。

然后,你可以用它这样的:

Yii::$app->urlManagerBackend->createUrl(...);

与重定向使用方法:

return $this->redirect(Yii::$app->urlManagerBackend->createUrl(...));

相关链接:

  • 问题在Github
  • 网址管理器组件
  • 路由和URL创建


文章来源: YII2 Redirect to backend after user registration from frontend