2017-01-17 10 views
0

Я новичок в cakephp У меня есть форма, которая является формой входа в систему при нажатии кнопки отправки формы входа, страница не переадресовывает. Он возвращается на ту же страницу, что и страница входа в систему. Проблема удаляется, когда я удаляю LoginAction из AppController. Мой код выглядит следующим образом:Невозможно перенаправить на следующую страницу при нажатии кнопки отправки в cakephp 3.0

index.ctp

<?php echo $this->Form->create('Login', array('url' => array('controller' => 'Login', 'action' => 'dashboard'))); ?> 
<?= $this->Form->input('username'); ?> 
<?= $this->Form->input('password'); ?> 
<?= $this->Form->submit('Login', array('class' => 'button')); ?> 
<?= $this->Form->end(); ?> 

AppController.php

$this->loadComponent('Auth',['loginAction' => [ 
         'controller' => 'Login', 
         'action' => 'index' 
        ],'authenticate' => [ 
          'Form' => [ 
          'userModel' => 'Login', // Added This 
          'fields' => [ 
           'username' => 'username', 
           'password' => 'password', 
          ] 
          ] 
        ],'loginRedirect' => [ 
         'controller' => 'Post', 
         'action' => 'dashboard' 
        ], 
       ]); 

LoginController.php

public function dashboard() 
{ 
    echo "sample msg"; 
    $this->render('dashboard'); 
} 


    public function login(){ 
    if($this->request->is('post')){ 
    $user=$this->Auth->identify(); 
    if($user) { 
    $this->Auth->setUser($user); 
    return $this->redirect(['controller'=>'Post']); 
    } 
    $this->Flash->error('Incorrect Login'); 
     } 
    } 

ответ

0

Если ваша проблема связана с перенаправлением просто добавьте это в соответствующем контроллере:

public function initialize() 
{ 
    parent::initialize(); 
    $this->Auth->allow(['dashboard']); // your actions list 
} 

Вы должны разрешить действия, если вам нужно получить доступ к ним непосредственно перед Войти добиться успеха.

+0

Но я получаю ту же страницу входа после нажатия кнопки отправки. Я думаю, проблема в AppController.php – user3653474

+0

где ваше действие для входа? это принадлежит контроллеру пользователей? –

+0

Нет контроллера пользователя, он принадлежит контроллеру входа в систему, но он все равно не работает, если я вызываю действие панели мониторинга, которое просто отображает другое представление. – user3653474