2013-07-30 2 views
2

У меня есть контроллер в подпапке. CodeIgniter не дает 404 страницы.Контроллер CodeIgniter в подпапке

Контроллер прекрасно работает в папке с корневым контроллером. Контроллер также отлично работает в подпапке 1-го уровня. Контроллер ломается во вложенной папке 2-го уровня.

Почему CodeIgniter не хотите, чтобы у вас было несколько подпапок?

Пример:

Работы: controllers/pages/HomeController.php

Сломанные: controllers/pages/users/HomeController.php

Мои маршруты, как это:

работы: $route['default_controller'] = "pages/HomeController";

Сломанные: $route['default_controller'] = "pages/users/HomeController";

+0

Найдено этот пост: http://stackoverflow.com/questions/13240111/codeigniter-2-not-allowing-multiple-level-subfolders-for-controllers Кажется немым, что CI только позволяет перейти на 1 уровень вниз. –

ответ

8

Я писал об этом раньше, вам просто необходимо прочитать инструкцию CI, но вот быстрая запись в блоге я, который должен вернуть вас на пути:

http://blog.biernacki.ca/2011/12/codeigniter-uri-routing-issue-with-controller-folders/

Пример:

$route['account/manage/(:num)/(:any)'] = "account/manage/index/$1/$2"; 
+0

Я прочитал ваше сообщение, и я не понимаю, что вы называете своим фактическим объектом контроллера. Это «Управление»? А затем в Manage вы просто вручную перенаправляете контроллер, который хотите? –

+1

И почему CI не допускает многоуровневые подпапки? –

+0

Контроллер называется «управлять», он находится прямо там, в сообщении ...? нет ничего, что «не позволяет» его просто нужно правильно маршрутизировать, поскольку по умолчанию «контроллер/метод/значения», пример выше «папка/контроллер/метод (индекс)/значение/значение» (справа стороны) – Jakub

0

CodeIgniter по сути не допускает использование нескольких папок контроллера. Он может работать или не работать, но это недокументированная причуда. Используя файл routes.php, вы можете виртуализировать любую структуру папок или контроллеров, которые вам нужны, просто позаботьтесь о том, чтобы отобразить маршруты в контроллер и метод в папке «Контроллеры».

Смежные вопросы