CakePHP недопустимый тип смещения - PullRequest
3 голосов
/ 21 марта 2012

Я новичок в cakephp и следую этому руководству по системе аутентификации пользователей

http://bakery.cakephp.org/articles/SeanCallan/2007/04/17/simple-form-authentication-in-1-2-x-x

Единственное, что я изменил, - это файл login.ctp.Я изменил указатели с

 $form-> 

на

 $this->Form->

Я получаю две ошибки и не могу понять, почему.Вот первое

Предупреждение (2): Недопустимый тип смещения [CORE \ Cake \ Model \ Model.php, строка 2603]

Это код / ​​контекст, который отображается, если($ type! == 'all') {if ($ this-> findMethods [$ type] === true) {

$type   =   array(
'username' => '',
'password' => '*****'
)
$query  =   array(
'conditions' => null,
'fields' => null,
'joins' => array(),
'limit' => null,
'offset' => null,
'order' => null,
'page' => (int) 1,
'group' => null,
'callbacks' => true,
(int) 0 => 'id',
(int) 1 => 'username'
)
$this   =   object(User) {}

Эта информация также отображалась

Model::buildQuery() - CORE\Cake\Model\Model.php, line 2603
Model::find() - CORE\Cake\Model\Model.php, line 2562
User::validateLogin() - APP\Model\User.php, line 9
UsersController::login() - APP\Controller\UsersController.php, line 21
ReflectionMethod::invokeArgs() - [internal], line ??
Controller::invokeAction() - CORE\Cake\Controller\Controller.php, line 484
Dispatcher::_invoke() - CORE\Cake\Routing\Dispatcher.php, line 104
Dispatcher::dispatch() - CORE\Cake\Routing\Dispatcher.php, line 86
[main] - APP\webroot\index.php, line 96

Вот вторая ошибка

Предупреждение (2): Недопустимый тип смещения [CORE \ Cake \ Model \ Model.php, строка 2579]

Это кодон отображает

   return $results;
     } else {
        if ($this->findMethods[$type] === true) {

$type   =   array(
'username' => '',
'password' => '*****'
 )
 $query =   array(
'conditions' => null,
'fields' => null,
'joins' => array(),
'limit' => null,
'offset' => null,
'order' => array(
),
'page' => (int) 1,
'group' => null,
'callbacks' => true,
(int) 0 => 'id',
(int) 1 => 'username'
)
$results    =   array(
(int) 0 => array(
)
)
$this   =   object(User) {}

Вот дополнительная информация

Model::find() - CORE\Cake\Model\Model.php, line 2579
User::validateLogin() - APP\Model\User.php, line 9
UsersController::login() - APP\Controller\UsersController.php, line 21
ReflectionMethod::invokeArgs() - [internal], line ??
Controller::invokeAction() - CORE\Cake\Controller\Controller.php, line 484
Dispatcher::_invoke() - CORE\Cake\Routing\Dispatcher.php, line 104
Dispatcher::dispatch() - CORE\Cake\Routing\Dispatcher.php, line 86
[main] - APP\webroot\index.php, line 96

1 Ответ

2 голосов
/ 21 марта 2012

Я бы посоветовал вам следовать более свежему руководству на

http://book.cakephp.org/2.0/en/tutorials-and-examples/blog-auth-example/auth.html

, которое должно точно соответствовать вашим настройкам, поскольку вы используете cakephp 2.1Тот, которым вы пытаетесь следовать, предназначен для cakephp1.2 и был написан в 2007 году, поэтому я сомневаюсь, что он будет вам полезен.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...