【问题标题】:Custom Authenticate in CakePHPCakePHP 中的自定义身份验证
【发布时间】:2012-10-10 15:45:31
【问题描述】:

我创建了一个 CustomAuthenticate 类,如下所示,并将其放在 app/Controller/Component/Auth 下。我在 sqlite 数据库中有一个模型“用户”和相应的“用户”表。虽然我不想要表“用户”,但它不能正常工作。但是现在在表单上点击“登录”之后。它出现以下跟踪错误

2012-10-10 00:57:59 Error: [CakeException] Authentication adapter "Custom" was not found.
#0 C:\Program Files (x86)\Ampps\www\application1\lib\Cake\Controller\Component\AuthComponent.php(630): AuthComponent->constructAuthenticate()
#1 C:\Program Files (x86)\Ampps\www\application1\lib\Cake\Controller\Component\AuthComponent.php(510): AuthComponent->identify(Object(CakeRequest), Object(CakeResponse))
#2 C:\Program Files (x86)\Ampps\www\application1\app\Controller\UsersController.php(70): AuthComponent->login()
#3 [internal function]: UsersController->login()
#4 C:\Program Files (x86)\Ampps\www\application1\lib\Cake\Controller\Controller.php(485): ReflectionMethod->invokeArgs(Object(UsersController), Array)
#5 C:\Program Files (x86)\Ampps\www\application1\lib\Cake\Routing\Dispatcher.php(186): Controller->invokeAction(Object(CakeRequest))
#6 C:\Program Files (x86)\Ampps\www\application1\lib\Cake\Routing\Dispatcher.php(161): Dispatcher->_invoke(Object(UsersController), Object(CakeRequest), Object(CakeResponse))
#7 C:\Program Files (x86)\Ampps\www\application1\app\webroot\index.php(92): Dispatcher->dispatch(Object(CakeRequest), Object(CakeResponse))
#8 {main}

AppController 在组件数组中有以下内容。

public $components = array(
        'Session',          
        'Auth' => array(
            'loginRedirect' => array('controller' => 'ananlyze', 'action' => 'index'),
            'logoutRedirect' => array('controller' => 'users', 'action' => 'login', 'home'),
            'authenticate' => array('Custom','Form')
        )
    );

感谢您的帮助。

【问题讨论】:

  • 类名和文件名是什么?
  • 类和文件名与app/Controller/Component/Auth文件夹下的'CustomAuthenticate'相同。

标签: cakephp


【解决方案1】:

您是否在 AppController 中调用了App::uses('CustomAuthenticate', 'Controller/Component/Auth');

【讨论】:

  • 是的。 App::uses('CustomAuthenticate', 'Controller/Component/Auth');在 AppController 中。
  • 我会将此标记为正确答案。我在 App::uses 中有一个错字,一旦我修复它就可以了。
猜你喜欢
  • 2013-11-10
  • 2013-11-19
  • 2018-01-05
  • 2020-04-01
  • 2022-12-10
  • 2018-09-26
  • 2010-12-17
  • 2015-12-03
  • 2016-07-09
相关资源
最近更新 更多