Yii custom Widget, ошибка загрузчика
Пожалуйста, помогите мне с этой проблемой (я использую Yii, Xampp на локальном хосте Windows):
Итак... Я создал новый виджет в "protected\components\views\Magus.php".
<?php
class Magus extends CWidget {
//////////////////////////////
public function run()
{
echo '<p style="color:blue; ">Trallala :) !</p>'; // do something.
}
//////////////////////////////
} //end class
Он используется здесь ("protected/views/layouts/main.php"):
<?php
$this->widget('/views/Magus');
?>
И это вызывает ошибку загрузчика (?):
Fatal error: include() [<a href='function.include'>function.include</a>]:
Cannot redeclare class magus in C:\xampp\htdocs\yii\framework\YiiBase.php on line 421
Но ошибка не происходит, если файл виджета помещается непосредственно в "protected\components". В чем причина этой ошибки и как ее исправить? Заранее спасибо!
1 ответ
Решение
Вы используете неправильные пути. Я предлагаю вам поместить ваш php-файл виджета в protected/components/Magus.php
и тогда вы можете позвонить из поля зрения
$this->widget('application.components.Magus');
Или вы можете сохранить его в папке, где он у вас есть, и назвать его так:
$this->widget('application.components.views.Magus');