x でカスタム ログイン コンポーネントを実装しようとすると、「認証アダプタ "xmlRpc" が見つかりませんでした」というエラーが表示されます。
私のAppController.phpには次のものがあります
<?php
App::uses('Controller', 'Controller');
//Custom Auth
App::uses('xmlRpc', 'Controller/Component/Auth');
class AppController extends Controller {
//Authentication component
public $components = array(
'Session',
'DebugKit.Toolbar',
'Auth' => array(
'authenticate' => array(
'xmlRpc'
)
)
);
}
次に、ログインコンポーネントを /Controller/Component/Auth/xmlRpc.php に配置します
<?php
App::uses('BaseAuthenticate', 'Controller/Component/Auth');
class xmlRpc extends BaseAuthenticate {
public function authenticate(CakeRequest $request, CakeResponse $response) {
return true;
}
}
?>
ユーザーコントローラーには次のものがあります。
<?php
App::uses('AppController', 'Controller');
//Custom Auth
App::uses('xmlRpc', 'Controller/Component/Auth');
class UsersController extends AppController {
public function logout() {
return $this->redirect($this->Auth->logout());
}
public function login() {
if ($this->request->is('post')) {
if ($this->Auth->login()) {
return $this->redirect($this->Auth->redirectUrl());
// Prior to 2.3 use `return $this->redirect($this->Auth->redirect());`
} else {
$this->Session->setFlash(__('Username or password is incorrect'), 'default', array(), 'auth');
}
}
}
}
?>
ところで、私の認証機能では、テストのためだけに常に true を返します。このエラーが解消されたら、ロジックを追加します。私は Cake n00b なので、私を助けて気楽にしてください。Cake にカスタム認証アダプターを表示させるにはどうすればよいですか?