私の管理者ルーティングが認証コンポーネントで動作するようにしようとしています。次のルーティングが機能するようにします。authコンポーネントの問題
Router::connect('/admin', array('controller' => 'pages', 'action' => 'index', 'admin' => true));
ですが、/ adminを入力すると、/ admin/users/loginにリダイレクトされ、このエラーが表示されます。
Create UsersController::admin_login() in file: cms.local/controllers/users_controller.php
ここは私のapp_controllerコードです。
class AppController extends Controller {
var $components = array('DebugKit.Toolbar','Auth','Session');
function beforeFilter(){
//Set up Auth Component
$this->Auth->loginAction = array('controller' => 'users', 'action' => 'login');
$this->Auth->loginRedirect = array('controller' => 'pages', 'action' => 'admin_index');
$this->Auth->allow('display');
}
}
users_controller
<?php
class UsersController extends AppController {
var $name = 'Users';
function login(){
}
function admin_logout(){
$this->Session->destroy();
$this->redirect($this->Auth->logout());
}
}
?>
あなたは私が知っているより多くの情報が必要な場合。管理者ならば
おかげ
は、なぜ私は2つのログイン機能が必要なのでしょうか?ログインとadmin_login。私はadmin_loginを追加しましたが、それはそれのためのビューを求めました。認証コンポーネントは管理ルーティングに似ていませんか? – madphp
ケーキのおかげですべて。 'admin'という接頭辞が必要な場合は、実際には' login'と 'admin_login'の両方が必要です。ユーザーと管理者が異なるログイン権を持つことは論理的であるため、対応するビューも作成する必要があります。 –