如果他没有登录页面,我想将用户重定向到登录页面。但我有 actionLogin 在我的
注册控制器
所以当我在我的 common/main 中使用时:
'as beforeRequest' => [ //if guest user access site so, redirect to login page.
'class' => 'yii\filters\AccessControl',
'rules' => [
[
'actions' => ['login', 'error'],
'allow' => true,
],
[
'allow' => true,
'roles' => ['@'],
],
],
],
它总是将我重定向到
index.php?r=site%2Flogin
可以将主登录重定向更改为
index.php?r=registration%2Flogin
如果可能的话,我应该在哪里覆盖代码或更改某些内容..!编辑!好的,
'用户' => ['loginUrl' => ['注册/登录'], ],
解决问题,但是当我想去注册/索引注册用户时,它会将我重定向到注册/登录。可以从强制执行中排除此 url。我要实现:
index.php?r=注册
唯一可用的路径
这是我的 Facebook 登录信息,我也想启用它
public function oAuthSuccess($client) {
// get user data from client
$userAttributes = $client->getUserAttributes();
$user = User::find()->where(['Email' => $userAttributes['email']])->one();
if (!$user) {
$newuser = New SignupForm();
$newuser->oAuthSuccess($client);
$user = User::find()->where(['Email' => $userAttributes['email']])->one();
if ($newuser->validate() && Yii::$app->getUser()->login($user)) {
Yii::$app->session->setFlash('success', Yii::t('app', 'Udało się poprawnie zalogować. Prosimy dokonać zmian w ustawianiach profilu.'));
return $this->redirect('index.php?r=content/news');
}
}
Yii::$app->user->login($user);
}