@michaelromanov90

Как создать консольную команду в Yii2 advanced?

Ситуация такая: у меня 2е машины, на каждой одинаковое окружение и исходные файлы проекта. На одном всё работает, на другом - нет. И я не могу понять почему...

Файл var/www/site/console/config/main.php
return [
   ...
    'controllerNamespace' => 'console\controllers',


Файл тестового консольного контроллера var/www/site/console/controllers/TestController.php
<?
namespace console\controllers;

use Yii;

class TestController extends \yii\console\Controller
{
    public function actionIndex()
    {
        print 1;
    }
}


В консоли набираю
php yii test/index

Получаю ошибку
<?
namespace console\controllers;

use Yii;

class TestController extends \yii\console\Controller
{
    public function actionIndex()
    {
        print 1;
    }
}Exception 'yii\base\UnknownClassException' with message 'Unable to find 'console\controllers\TestController' in file: /var/www/site/console/controllers/TestController.php. Namespace missing?'

in /var/www/site/vendor/yiisoft/yii2/BaseYii.php:291

Stack trace:
#0 [internal function]: yii\BaseYii::autoload('console\\control...')
#1 [internal function]: spl_autoload_call('console\\control...')
#2 /var/www/site/vendor/yiisoft/yii2/base/Module.php(633): class_exists('console\\control...')
#3 /var/www/site/vendor/yiisoft/yii2/base/Module.php(591): yii\base\Module->createControllerByID('test')
#4 /var/www/site/vendor/yiisoft/yii2/base/Module.php(517): yii\base\Module->createController('index')
#5 /var/www/site/vendor/yiisoft/yii2/console/Application.php(180): yii\base\Module->runAction('test/index', Array)
#6 /var/www/site/vendor/yiisoft/yii2/console/Application.php(147): yii\console\Application->runAction('test/index', Array)
#7 /var/www/site/vendor/yiisoft/yii2/base/Application.php(380): yii\console\Application->handleRequest(Object(yii\console\Request))
#8 /var/www/site/yii(27): yii\base\Application->run()


Как быть, кто подскажем?
  • Вопрос задан
  • 1003 просмотра
Решения вопроса 1
inoise
@inoise
Solution Architect, AWS Certified, Serverless
Php short tags - он же вам вывел содержимое файла
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы