2017-06-20 7 views
0

に動作していない、それはusers/loginにリダイレクトする代わりにadmin_logins/indexにリダイレクトのセッションタイムアウト、logoutRedirectは()私のアプリのコントローラではCakePHPの

私はアプリでbeforeFilter()内logoutRedirectのURLを印刷した場合、私は

class AppController extends Controller { 

    public $components = array(
     // 'DebugKit.Toolbar', 
     'Session', 
     'Auth' => array(
      'loginRedirect' => array('controller' => 'admin_logins', 'action' => 'dashboard'), 
      'logoutRedirect' => array('controller' => 'admin_logins', 'action' => 'index'), 
      'authError' => 'You must be logged in to view this page.', 
      'loginError' => 'Invalid Username or Password entered, please try again.', 
      'authenticate' => array('Form' => array('fields' => array('username' => 'email', 'password' => 'password')) 
      ) 

    )); 
.......... 
?> 

として定義しました

// only allow the login controllers only 
    public function beforeFilter() { 
     $this->Auth->authorize = 'Controller'; 
     $this->Auth->allow('index'); 
     pr($this->Auth->logoutRedirect); die; 
} 

以下のようなコントローラそれは

以下のように印刷し
Array 
(
    [controller] => admin_logins 
    [action] => index 
) 

まだリダイレクト先users/login誰かがここにお勧めできますか?

答えて

0

私の間違いです。 AppControllerloginActionを定義していませんでした。私の$componentsを変更した後、正常に動作しています。

public $components = array(
     // 'DebugKit.Toolbar', 
     'Session', 
     'Auth' => array(
      'loginRedirect' => array('controller' => 'admin_logins', 'action' => 'dashboard'), 
      'loginAction'=>array('controller'=>'admin_logins', 'action'=>'index'), 
      'logoutRedirect' => array('controller' => 'admin_logins', 'action' => 'index'), 
      'authError' => 'You must be logged in to view this page.', 
      'loginError' => 'Invalid Username or Password entered, please try again.', 
      'authenticate' => array('Form' => array('fields' => array('username' => 'email', 'password' => 'password')) 
      ) 

    )); 
関連する問題