Na początek trochę kodu (przykładowe użycie):
CreatorController (zf2.localhost/creator/index)
<?php namespace Creator\Controller; use Zend\View\Model\ViewModel; use Zend\Mvc\Controller\AbstractActionController; use Creator\Controller\SessionServiceController; class CreatorController extends AbstractActionController{ public function __construct(){ $this -> sessionService = new SessionServiceController(); } public function indexAction(){ if($this-> sessionService ->checkSession()){ } } }
SessionServiceController:
namespace Creator\controller; use Zend\Mvc\Controller\AbstractActionController; use Zend\Session\Container; use Creator\Controller\SessionServiceController; class SessionServiceController extends AbstractActionController { const CONTAINER_SESSION_ID = 'usr_id'; public function __construct(){ } public function checkSession(){ //$this->redirect()->toUrl("zf2.localhost/authUser/index"); return $this->redirect()->toRoute('creator/default', } return true; } } }
Co chcę osiągnąć:
Chcę by po spełnieniu warunku w funkcji checkSession przekierowało mnie do zf2.localhost/authUser/index
całość działa gdy bezpośrednio z CreatorController wykonuję toRoute, jednak w sytuacji kilku plików, nie ma sensu powtarzać kilkukrotnie tej samej funkcji, stąd chcę ją mieć w osobnym pliku i tylko się do niej odwoływać (tak jak wyżej).
Dlatego proszę o pomoc w wytłumaczeniu co robię źle,
że wyświetla mi błąd: Url plugin requires that controller event compose a router; none found
Jeżeli jest lepszy sposób na poradzenie sobie z tym to także proszę o nakierowanie.
Pozdrawiam.