Привет, форум во время работы с библиотекой CI 2.0.3 и интернационализации (i18n), я столкнулся с этой проблемой. Я читал подобные сообщения здесь, но они не решили мою проблему. Надеюсь, кто-то здесь может указать мне в правильном направлении.CodeIgniter и i18n library
routes.php:
$route['default_controller'] = "home";
$route['404_override'] = '';
$route['scaffolding_trigger'] = "";
// '/en', '/de', '/ru' URIs -> use default controller
$route['^(en|de|ru)$'] = $route['default_controller'];
// URI like '/en/about' -> use controller 'about'
$route['^(en|de|ru)/(:any)'] = "$2";
Это прекрасно работает, но я в районе под названием «блог», внутри Блог CI_Controller это функция, которая захватывает статью из базы данных:
public function article()
{
$this->db->where('id', $this->uri->segment(4));
$data['query']= $this->db->get('blogentries');
$this->load->view('article_view',$data);
}
Замечательно, работает. Результатом является URL-адрес, например/en/blog/article/1. В файлах язык я мой переменные сохраненный как это:
$lang['menu.blog'] = "Blog";
В дневнике переменного $ LANG загружен:
<?=lang('menu.blog')?>
Проблема встречается, при открытии статьи, вар из языковой файл вообще не загружается. http://localhost/ вместо «Блог». Я предполагаю, что это связано с маршрутизацией. Так, если для URL, как/ан/блог я бы:
$route['^(en|de|ru)/(:any)'] = "$2";
Все остальные адреса работают отлично и загрузить переменные из файла языка правильно.
Но как я могу обрабатывать URL-адреса, например/en/blog/article/1? Думаю ли я в правильном направлении? Предложения приветствуются.
спасибо.