Я пытаюсь реализовать HMVC с помощью CodeIgniter. Я использовал эту библиотеку из bigbucket
Библиотека CI HMVC
Он отлично работает для меня, когда я создал модуль администратора. Но теперь я пытаюсь определить модуль внутри модулей. Итак, моя структура будет такой:
Здесь «admmin» – мой главный модуль. И страница является вспомогательным модулем администратора. Я снова определяю два подмодуля модуля страницы 1) Статический и 2) Динамический.
Когда я обращаюсь к модулю администратора с помощью URL:
http://localhost/ci_hmvc/index.php/admin
оно работает. Но когда я пытаюсь получить доступ к вспомогательному модулю, используя этот URL-адрес:
http://localhost/ci_hmvc/index.php/admin/page
Это дает мне ошибку 404.
Любой намек будет полезен.
благодаря
Это не так, как должно работать. Модуль должен иметь свою собственную папку в модулях (хотя вы все равно можете поместить их в свой собственный контроллер, модель, просмотреть папки, если вы не хотите модульного разделения).
Вы должны просто создать новый метод для каждого из модулей «функции». Таким образом, они будут по-прежнему иметь те же свойства и методы, которые доступны, и не было бы смысла в создании новой папки.
class Page extends MX_Controller { public function __construct() { parent::__construct(); // Your constructor code } public function static() { // Your static page code } public function dynamic() { // Your dynamic page code } }
Маршрутизируя и вызывая модули, вы можете прочитать все на странице bitbucket.
Я обсуждал это со своими коллегами и старшими разработчиками. И после долгого обсуждения мы согласны с тем, что «Мы можем реализовать эту структуру, но это не является хорошей практикой и вызовет проблемы и сложность в обслуживании».