Получить модуль, контроллер и имя действия в файле Bootstrap.php в Zend 1.11 - PullRequest
0 голосов
/ 12 ноября 2018

В моем приложении внешнего интерфейса (на одной странице) я реализую маршрутизацию на стороне клиента с использованием AngularJS (не hashbang (#)).Бэкэнд находится в ZendFramework 1.11.

Я хочу всегда загружать домашнюю страницу для нескольких разных запросов на получение (например, domain.com/user/home/list, domain.com/enterprise/internal/ dashboard, domain.com/report/page2/download ...).

Так что я думаю поместить проверку пути в Bootstrap.php и перенаправить на домашнюю страницу.Поэтому я пытаюсь получить ModuleName в файле Bootstrap.php , но получаю moduleName как default всегда. Это должно быть user , предприятие , отчет .

Буду признателен за вашу помощь и время.

Ниже приведены примеры примеров использования

Пример папки с примерами

application
---modules
------controllers
----------HomeController.php
-------------listAction()

Пример кода в boostrap.php

//request url : http://myurl.com/user/home/list
$rtr = new Zend_Controller_Router_Rewrite();
$h = new Zend_Controller_Request_Http();
$rq = $r->route($h);
print "getModuleName - ".$rq->getModuleName(); // default
print "getControllerName - ".$rq->getControllerName(); //home
print "getActionName - ".$rq->getActionName(); //list

Но вышеприведенный вывод неверен ( moduleName: default ), должно быть ( moduleName: пользователь )

print "getModuleName - ".$rq->getModuleName(); // user
print "getControllerName - ".$rq->getControllerName(); //home
print "getActionName - ".$rq->getActionName(); //list

1 Ответ

0 голосов
/ 12 ноября 2018

Я получил решение, чтобы получить Имя модуля, контроллера и имени действия

$this->bootstrap('FrontController');
$front = $this->getResource('FrontController');
$req = new Zend_Controller_Request_Http();
$router = $front->getRouter();
$router->route($req);
$module = $req->getModuleName();//user
$controller = $req->getControllerName();//home
$action = $req->getActionName();//list
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...