0
Hello論壇,與CI 2.0.3和國際化(i18n)庫一起工作時,我遇到了這個問題。我在這裏看過類似的帖子,但是他們沒有解決我的問題。希望這裏的某個人能指引我走向正確的方向。CodeIgniter和i18n庫
的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);
}
美妙,作品也。結果是一個像/ zh/blog/article/1這樣的URL。 在語言文件,我有我的變量保存的是這樣的:
$lang['menu.blog'] = "Blog";
在博客查看$ LANG變量加載:
<?=lang('menu.blog')?>
的問題,同時打開一篇文章從occures,該變種語言文件根本沒有加載。 http://localhost/而不是「博客」。我想它與路由有關。因此,如果對於像/ EN /博客的網址,我將有:
$route['^(en|de|ru)/(:any)'] = "$2";
其他所有網址完美地工作,並正確加載的語言文件中的變量。
但是我該如何處理URL/zh/blog/article/1?我在朝着正確的方向思考? 建議表示讚賞。
謝謝。