ФорумПрограммированиеPHP для идиотов → Yii Framework - include(SELF.PHP) - Error

Yii Framework - include(SELF.PHP) - Error

  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 21 июля 2010 г. 21:58

    В общем, меня тут спровоцировали попробовать Yii. Начал я с Building a Blog System using Yii. И после генерации моделей и изменения компонента UserIdentity, вылетает ошибка:

    include(SELF.php) [<a href='function.include'>function.include</a>]: failed to open stream: No such file or directory
    
    00326:      * @param string class name
    00327:      * @return boolean whether the class has been loaded successfully
    00328:      */
    00329:     public static function autoload($className)
    00330:     {
    00331:         // use include so that the error PHP file may appear
    00332:         if(isset(self::$_coreClasses[$className]))
    00333:             include(YII_PATH.self::$_coreClasses[$className]);
    00334:         else if(isset(self::$_classes[$className]))
    00335:             include(self::$_classes[$className]);
    00336:         else
    00337:         {
    00338:             include($className.'.php');
    00339:             return class_exists($className,false) || interface_exists($className,false);
    00340:         }
    00341:         return true;
    00342:     }
    00343: 
    00344:     /**
    00345:      * Writes a trace message.
    00346:      * This method will only log a message when the application is in debug mode.
    00347:      * @param string message to be logged
    00348:      * @param string category of the message
    00349:      * @see log
    00350:      */
    


    Стектрейс:
    
    #0 Z:\home\yblog\www\yii\framework\YiiBase.php(338): autoload()
    #1 unknown(0): autoload()
    #2 Z:\home\yblog\www\blog\protected\components\UserIdentity.php(33): spl_autoload_call()
    #3 Z:\home\yblog\www\blog\protected\models\LoginForm.php(50): UserIdentity->authenticate()
    #4 Z:\home\yblog\www\yii\framework\validators\CInlineValidator.php(39): LoginForm->authenticate()
    #5 Z:\home\yblog\www\yii\framework\validators\CValidator.php(178): CInlineValidator->validateAttribute()
    #6 Z:\home\yblog\www\yii\framework\base\CModel.php(150): CInlineValidator->validate()
    #7 Z:\home\yblog\www\blog\protected\controllers\SiteController.php(88): LoginForm->validate()
    #8 Z:\home\yblog\www\yii\framework\web\actions\CInlineAction.php(32): SiteController->actionLogin()
    #9 Z:\home\yblog\www\yii\framework\web\CController.php(300): CInlineAction->run()
    #10 Z:\home\yblog\www\yii\framework\web\CController.php(278): SiteController->runAction()
    #11 Z:\home\yblog\www\yii\framework\web\CController.php(257): SiteController->runActionWithFilters()
    #12 Z:\home\yblog\www\yii\framework\web\CWebApplication.php(324): SiteController->run()
    #13 Z:\home\yblog\www\yii\framework\web\CWebApplication.php(121): CWebApplication->runController()
    #14 Z:\home\yblog\www\yii\framework\base\CApplication.php(135): CWebApplication->processRequest()
    #15 Z:\home\yblog\www\blog\index.php(14): CWebApplication->run()
    


    Может уже кто из юишников встречался? Troy, ты где?
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 июля 2010 г. 22:07, спустя 9 минут 26 секунд

    krasun, ты где то видимо использвоал в коде у себя SELF ? попробуй в лаверкейсе написать
    Сапожник без сапог
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 21 июля 2010 г. 22:11, спустя 3 минуты 54 секунды

    phpdude, я в шоке. В том, то и дело, я все делал по инструкции и self, еще нигде не писал. А тут оба-на.

    #3 в трейсе:
    
    $this->_identity=new UserIdentity($this->username,$this->password);
    


    где self? )
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 июля 2010 г. 22:33, спустя 22 минуты 35 секунд

    krasun, хуй знает :)
    Спустя 35 сек.
    я рейд массив тока что случайно очистил на сервере, rm -rf / - мелочь, она долго удаляет хотя бы :D
    Сапожник без сапог
  • Nyaah

    Сообщения: 574 Репутация: N Группа: Джедаи

    Spritz 21 июля 2010 г. 23:09, спустя 35 минут 6 секунд

    файл UserIdentity.php в компонентах есть?
    Work, buy, consume, die
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 21 июля 2010 г. 23:10, спустя 1 минуту 12 секунд

    есть. и в конфиге есть
    
    
    'import'=>array(
    		'application.models.*',
    		'application.components.*',
    	),
    
  • Nyaah

    Сообщения: 574 Репутация: N Группа: Джедаи

    Spritz 21 июля 2010 г. 23:12, спустя 1 минуту 50 секунд

    пля, чтото туплю ) покажи что там у тебя в этом файле )
    Спустя 28 сек.
    конкретно в 33 строке
    Work, buy, consume, die
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 21 июля 2010 г. 23:16, спустя 4 минуты 52 секунды

    ебать, капать, я поц. Дуд, был прав. Ставьте мне минус. Я не заметил, написал там SELF. =((
  • phpdude

    Сообщения: 26646 Репутация: N Группа: в ухо

    Spritz 21 июля 2010 г. 23:23, спустя 6 минут 49 секунд

    Дуд, был прав

    предлагаю новую экстрасенсорную услугу - "лечение багов по названию сабжа" :)
    Сапожник без сапог
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 21 июля 2010 г. 23:27, спустя 3 минуты 20 секунд

    Та ну гон, блин, отвлекся и забыл, что правил файл, а потом думаю, откуда тут SELF, вот так. Надо было пройтись по трейсу - правило номер 1 дебага.
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 21 июля 2010 г. 23:37, спустя 10 минут 36 секунд

    В Yii такую штуку Qiang Xue
    
        public function normalizeTags($attribute,$params)
        {
            $this->tags = Tag::array2string(array_unique(Tag::string2array($this->tags)));
        }
    

    называет валидатором. Хотя в Zend Framework, да и я назвал бы это фильтром
  • Абырвалг

    Сообщения: 6480 Репутация: N Группа: Джедаи

    Spritz 22 июля 2010 г. 1:46, спустя 2 часа 8 минут 50 секунд

    Qiang Xue

    это мужик какой-то?
    Спустя 38 сек.
    я тоже считаю, что это фильтр
    Спустя 32 сек.
    и мне не нравятся эти статич. методы
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 22 июля 2010 г. 2:07, спустя 20 минут 48 секунд

    Абырвалг, это разработчик Qiang Xue
    Спустя 17 сек.
    блять, это в смысле разработчик Yii
  • krasun

    Сообщения: 1370 Репутация: N Группа: Джедаи

    Spritz 22 июля 2010 г. 2:16, спустя 9 минут 19 секунд

    Я пробую, конечно, понравилось, что все автоматически генерируется (модели, контроллеры, формы и так далее).
    Понравилось, что в CComponent все геттеры $val->getSomeValue() и т.п. превращаются в удобные $val->someValue, не плохая идея. Прикольно, что есть много готовых компонентов, виджетов и т.д.

    Легко управляется доступ к контроллерам, хотя не знаю, есть ли в Yii наследование как в Zend_Acl. И не понравилось, что многие вещи настраиваются на месте, например, мне нравиться выносить "pagination.countPerPage = 5" в конфиги. Может здесь так можно, но еще не разобрался.

    Не понравилось, что логика разбросана по контроллерам и моделям + модель реализует ActiveRecord, а я люблю анемичные доменные модели. В Zend Framework я делаю отдельный сервисный слой и контроллер служит лишь для обработки запроса. Хотя я еще в Yii не разобрался, может здесь тоже так можно будет сделать.

    Конечно, прикольно, что уже структура вся зашита и ты всего лишь генеришь, генеришь, правишь, генеришь. Но в этом есть и минус - где же наслаждением проектированием?! Но я пробую написать пока, что простой блог по туториалу, а там будет желание попробую, что-то более сложное.
  • Troy

    Сообщения: 2532 Репутация: N Группа: Джедаи

    Spritz 22 июля 2010 г. 9:16, спустя 6 часов 59 минут 24 секунды

    krasun, если хочешь наслаждатся, то зачем вобще фв ?
    И тут фильтры есть, но они выполняют другии функции, тут фильтры для контроллера, например фильтр доступа и тп.

Пожалуйста, авторизуйтесь, чтобы написать комментарий!