2013-03-22 106 views
1

我已經爲我的管理面板完成管理路由。現在的網址是localhost/app/adminCakephp 2.x管理員登錄不工作,登錄重定向以及

現在我有2個表管理員和用戶。

我爲登錄localhost/app/admin/admins/login創建了一個url。

頁面會提示輸入用戶名和密碼。

,但問題是當創建loginredirect被重定向到本地主機/應用/管理/用戶/登錄。我不知道爲什麼在AppController的組成部分。我什至試圖改變loginredirect路徑,但它沒有任何工作。

這是我appcontroller.php:

public $components = array(
    'Session', 
    'Auth' => array(
     'loginRedirect' => array('controller' => 'admins', 'action' => 'add'), 
     'logoutRedirect' => array('controller' => 'pages', 'action' => 'display', 'home') 
    ) 
); 

public function beforeFilter() { 
    $this->Auth->allow('index', 'view'); 
} 

即使我刪除用戶表,它重定向到用戶的登錄。

回答

0

這聽起來像您的身份驗證組件不起作用。而不是將auth重定向添加到組件變量中,而是將它們放入您的beforeFilter()中。您的appController應該是:

public $components = array('Auth','Session'); 

    public function beforeFilter() 
{ 
    $this->Auth->loginRedirect = array('action' => 'add', 'controller' => 'admins'); 
    $this->Auth->logoutRedirect = array('controller' => 'pages', 'action' => 'display', 'home'); 
    $this->Auth->authError = 'You are not allowed to see that.'; 

} 

您是否成功登錄?如果是這樣,請檢查routes.php以確保正確地路由事物。這可以通過嘗試手動導航到example.com/admins/add來測試。