Я создал модуль, и в этом модуле у меня есть действие. Это моя структура модуля:
modules
admin
controllers
actions
В моем главном контроллере у меня есть этот код:
function actions()
{
return array(
'approveEntity' => array(
'class' => 'application.modules.admin.controllers.actions.ApproveEntityAction'
),
Но когда я запускаю страницу /pendingEntries/approveEntity
Я получаю это сообщение об ошибке:
кличка
«application.modules.admin.controllers.actions.ApproveEntityAction» является
недействительным. Убедитесь, что он указывает на существующий файл PHP и файл
удобочитаемый.
Каков правильный «путь» для моего ApproveEntityAction.php
файл?
Обновить
Мы импортируем это:
// autoloading model and component classes
'import'=>array(
'application.models.*',
'application.components.*',
'application.controllers.plugins.*',
'application.components.widgets.*',
'application.helpers.*',
'application.forms.*',
Сначала убедитесь, что вы импортировали путь в файл модуля администратора.
public function init() {
$this->setImport(array(
'admin.models.*',
'admin.components.*',
'admin.controllers.*' //importing all files situated in controllers directory
'admin.controllers.actions.*' //importing all files situated in actions directory
));
}
Затем сделайте, как показано ниже:
public function actions(){
return array('approveEntity'=>'application.modules.admin.controllers.actions.ApproveEntityAction');
}
Я думаю, что ключевым моментом был импорт каталогов, которые содержат ваши файлы действий.
Других решений пока нет …