国际化进程无效。
我跑了cake i18n export
。之后,我将翻译放入文件夹app/locale/por/LC_MESSAGES/default.po.
中的文件“.po”。
我在AppController beforeFilter()
中调用了方法Configure::write('Config.language', 'por');
。
但翻译未显示在__()
- 方法中。
答案 0 :(得分:2)
以下是一些可能的建议:
•清除PATH_YOUR_APP/tmp/cache
中的Cake缓存。删除models
和persistent
中的文件,但不删除目录本身。我相信持久性是保存本地化字符串的地方,但是为了确保它们都是空的。
•除beforeFilter
以外,您是否覆盖任何控制器中的AppController
?如果是这样,请在控制器的parent::beforeFilter();
方法中调用beforeFilter
,然后再处理其他内容,如下所示:
public function beforeFilter() {
parent:beforeFilter();
//Do stuff here
}
•您是如何创建翻译文件的? .mo
目录中是否还有.po
个文件?我认为由于字符编码问题,不建议直接编辑.po
和.pot
文件(但我可能会弄错)。 Poedit是处理.po
文件的好工具,但它可能更强大。
答案 1 :(得分:0)
还有更多要检查的事情