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