CakePHP:让用户选择语言

时间:2012-11-30 12:41:42

标签: php cakephp

我希望用户在cakePHP应用中选择他们的语言。我有德语和英语的default.po文件。但是当我在Controller函数中调用$this->Session->write('Config.language', 'ger');时,没有任何反应。

我需要做些什么才能让它发挥作用?

控制器功能:

public function changeLang() { 
    $this->autoRender = false; 
    $this->Session->write('Config.language','ger'); 
    Configure::write('Config.language','ger'); 
    $this->Session->setFlash(__('Language changed succefully.')); 
    $this->redirect($this->referer()); 
}

2 个答案:

答案 0 :(得分:0)

文档here表明您需要写入configure类以及设置会话变量。

class AppController extends Controller {
    public function beforeFilter() {
        Configure::write('Config.language', $this->Session->read('Config.language'));
    }
}

答案 1 :(得分:0)

我找到了解决方案,我的文件夹使用了错误的语言代码。我有“ger”但它应该是“deu”。