У меня есть консольный маршрут в моем файле module.config.php
'console' => [
'router' => [
'routes' => [
'remove' => [
'type' => 'simple',
'options' => [
'route' => 'remove [force] [init]',
'defaults' => [
'controller' => Controller\CliController::class,
'action' => 'remove',
],
],
]
]
]
]
И мой контроллер, который имеет метод removeAction ()
namespace Controller;
class CliController extends AbstractActionController
{
public function removeAction()
{
$this->logger->debug('I am in');
}
}
Когда я делаю команду php public/index.php remove force
или же php public/index.php remove
Меня никогда не посылают делать контроллер, и нет ошибок или каких-либо выходных данных. Так я делаю сопоставление неправильно?
Это как приложение не понимает, что он был вызван из терминала. Иногда это просто возвращается html
если я удалю getConfig
метод из Module.php
в моем module/MyModulefolder
,
Проблема была в том, что я не включил 'Zend\Mvc\Console'
в modules.config.php
так что он не реагировал, когда ему давали команду из консоли.
После помещения этого в массив в modules.config.php
все работает.
Ошибка новичка.
Других решений пока нет …