1

我总是必须将我的应用程序翻译成意大利语,并且我做了好几次,但我无法让它与 CakePHP 3.0 一起工作。这就是我所做的:

我通过控制台的 cake i18n 提取了一个 .pot 文件。将其上传到 poeditor 并编辑了我的所有字符串 将其下载到 src/Locale/it/default.po 作为手册(http://book.cakephp.org/3.0/en/core-libraries/internationalization-and-localization. html ) 说检查了 config/bootstrap 有正确的语言集:

ini_set('intl.default_locale', 'it_IT');

由于它不起作用,我尝试了一些愚蠢的事情,比如将我的文件夹重命名为 src/Locale/it_IT/default.po、src/Locale/ita/default.po,将我的 .po 文件包装在 LC_MESSAGES 中,就像使用 CakePHP 一样2.x...仍然没有结果。

调试设置为真,所以不应该有缓存...

我知道这可能是一个愚蠢的问题,但我已经过去几个小时了,但我仍然无法让它工作......我做错了什么?

4

2 回答 2

6

对不起,我遇到了问题,我真的很惭愧...文件位于正确的位置(src/Locale/it/default.po),一切都设置得很好,但它没有 apache 的读取权限. 对不起!

编辑:这是一个老问题,但我在新的 CakePHP 4 项目中遇到了同样的问题。事实证明,在这种情况下,Cake 需要读取和写入权限才能实际使用这些文件。我希望这有帮助。

于 2014-10-30T13:41:43.460 回答
3

尝试转到您的服务器并从文件夹中app/tmp/cache/view删除您在其中看到的文件。这是您的应用正在使用的缓存。app/tmp/cache/modelapp/tmp/cache/persistant

于 2014-10-30T13:13:26.070 回答