Ho un controller della console e un'azione per inviare messaggi di posta elettronica (definiti di seguito in module.config.php)Come posso creare un URL in un controller della console in ZF2?
'console' => array(
'router' => array(
'routes' => array(
'cronroute' => array(
'options' => array(
'route' => 'sendEmails',
'defaults' => array(
'controller' => 'Application\Controller\Console',
'action' => 'send-emails'
)
)
),
)
)
),
Nell'azione voglio mandare una e-mail contenente un collegamento a un'altra azione sul sito. Questo normalmente verrebbe eseguito con un URL View Helper, ma poiché la richiesta è di tipo Console e non HTTP, ciò non funziona. Ho provato a creare una richiesta HTTP, ma non so come assegnargli il dominio del sito o il link Controller/Azione. Codice
mio controller:
$vhm = $this->getServiceLocator()->get('viewhelpermanager');
$url = $vhm->get('url');
$urlString = $url('communication', array('action' => 'respond', 'id' => $id,
array('force_canonical' => true));
Questo genera un errore:
======================================================================
The application has thrown an exception!
======================================================================
Zend\Mvc\Router\Exception\RuntimeException
Request URI has not been set
Come si crea una richiesta HTTP in un controller della console che ha lo schema del sito, del dominio e path/to/azione? E come posso passare all'URL View Helper?
Sei riuscito a trovare una soluzione? –
Non nel modo desiderato, creando una route HTTP in un controller della console. Ho finito per impostare una variabile per l'URL del sito nell'array di configurazione. – Nick