Я недавно обновил сайт с CodeIgniter 1.7.x до 2.0.3.Примерно в то же время кто-то из моей организации попросил добавить несколько страниц на сайт.Под разделом.В старой версии сайта я использовал некоторые обходные пути в контроллере, чтобы разбить более длинный URL.Но в версии 2 я вижу, что я должен иметь возможность использовать подкаталоги в папке контроллеров, чтобы сделать это более правильным способом.Посмотрев повсюду, я перепробовал все виды объявлений о маршрутизации и возился с разными вещами.Надеюсь, я делаю что-то простое, неправильное, или, возможно, кто-то видел аналогичную проблему, связанную с обновлением.
Я пытаюсь получить URL от чего-то вроде:
/about/locations
Который раньше работал с контроллером с именем about.php.К чему-то более похожему:
/about/social_responsibility/commitment
Где about
теперь является aub-каталогом.
Забавно, в настоящее время он работает вроде как.Этот второй URL отображается правильно.Однако мои старые страницы, этот первый URL, теперь не работают ... Моя новая структура использует файл base.php (default_controller) в каталоге about
.Таким образом, если я напишу:
/about/base/locations
Это работает.Но я подумал, что весь процесс маршрутизации (default controller
) и использование подкаталогов должен очистить URL.
Моя информация выглядит следующим образом ...
Текущая маршрутизация (за последние несколько часов она изменилась)
$route['default_controller'] = "base";
$route['404_override'] = '';
$route['about'] = "about/base";
Каталоги и файлы
/controllers/about/base.php
/controllers/about/social_responsibility.php
Кусок base.php
class Base extends MY_Controller
{
public function __construct()
{
parent::__construct();
$this->data['parent'] = "About";
$this->load->model('mnav');
}
public function index()
{
}
public function locations()
{
}
}
У меня также есть MY_Controller
, который расширяется CI_Controller
, новсе, что он делает, это включает FirePHP для меня в среде разработки.
У кого-нибудь есть подсказки?Или нужна дополнительная информация, чтобы помочь?Спасибо!