2016-03-13 3 views
0

Я пытаюсь реализовать хешер пароля blowfish в моем приложении cakePHP. Я пошел вместе с учебником.cakePHP класс blowfishpasswordhasher не найден

При попытке добавить нового пользователя я получаю фатальную ошибку, когда пытаюсь создать экземпляр нового класса BlowfishPasswordHasher в функции beforeFilter моей пользовательской модели. Ошибка: Class 'BlowfishPasswordHasher' не найден.

Я видел вопрос here, но похоже, что все правильно настроено.

Вот соответствующий код в моем приложении/Controller/AppController:

class AppController extends Controller { 

public $components = array(
    'Flash', 
    'RequestHandler', 
    'Auth' => array(
     'authenticate' => array(
      'Form' =>array(
       'passwordHasher' => 'Blowfish' 
       'fields' => array(
        'username' => 'username', 
        'password' => 'password' 
       ), 

      ), 

     ), 
     'loginRedirect' => '/trails', 
     'logoutRedirect' => '/', 
    ), 
); 

приложение/модели/User.php

<?php 
App::uses('AppModel', 'Model'); 
App::uses('BlowfishPasswordHasher', 'Conroller/Component/Auth'); 

class User extends AppModel { 

public function beforeSave($options = array()) { 
    if (isset($this->data[$this->alias]['password'])) { 
     $passwordHasher = new BlowfishPasswordHasher(); 
     $this->data[$this->alias]['password'] = $passwordHasher->hash($this->data[$this->alias]['password'] 
     ); 
    } 
return true; 
} 

Любая помощь очень ценится !!!

ответ

1

Похоже, у вас есть орфографическая ошибка:

App::uses('BlowfishPasswordHasher', 'Conroller/Component/Auth'); 

изменить это на:

App::uses('BlowfishPasswordHasher', 'Controller/Component/Auth'); 

Там нет папки Conroller и, следовательно, он не может найти файл библиотеки BlowFish.

Надеюсь, это поможет.

+0

Это исправлено. Я просмотрел этот код, вероятно, 50 раз и не смог найти ошибку. Знал, что это должно быть что-то простое. Хороший глаз !!! – user3024168

+0

Довольно уверен, что каждый разработчик столкнулся с такой проблемой в какой-то момент, ха-ха. Ничего страшного. :) –