Как использовать папки в Codeigniter? - PullRequest
5 голосов
/ 25 сентября 2011

Я только начинаю с Codeigniter. Я создал простой контроллер с именем home.php и представление с именем home_view.php. Это работает нормально. Теперь мне бы хотелось, чтобы этот сайт, который я создаю, имел административный раздел в дополнение к публичной версии www. Поэтому я реорганизовал свою файловую структуру следующим образом:

controllers:

www
 - home.php
admin

Views:

www
 - home_view.php
admin

Со временем я помещу связанные с администратором контроллеры и представления в их соответствующие каталоги. Но после того, как мои файлы были перемещены, они больше не работают. Я думаю, что мне нужно что-то изменить в файлах маршрутов или конфигурации. Что мне делать?

1 Ответ

2 голосов
/ 25 сентября 2011

Для представлений вам просто нужно добавить имя папки в начало представления, например:

$this->load->view('www/home_view.php');

Возможно, вам потребуется повторить маршрутизацию для контроллеров, чтобы учесть дополнительные папки,Это можно сделать с помощью чего-то вроде следующего:

$route['admin/(:any)/(:any)'] = 'admin/$1/$2';
$route['admin/(:any)'] = 'admin/$1/index';

Это будет использовать контроллер ($ 1) и функцию ($ 2) внутри папки администратора, если URL-адрес www.example.com/index.php/admin / [controller] / [function]

для контроллеров в папке администратора;

и обновите контроллер по умолчанию следующим образом:

$route['default_controller'] = "www/home";
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...