首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >CakePHP 3.7.4中缓存的翻译

CakePHP 3.7.4中缓存的翻译
EN

Stack Overflow用户
提问于 2020-05-25 09:33:48
回答 1查看 157关注 0票数 0

我接手了一个关于cakephp的项目。问题是我不能改变翻译文本。在src/Locale下,我有:

代码语言:javascript
代码运行次数:0
运行
复制
en_EN
  default.mo
  default.po
no_NO
  default.mo
  default.po
cake.pot
default.pot

在控制器中

代码语言:javascript
代码运行次数:0
运行
复制
public function view($id)
{
    $order = $this->Order->get($id);
    $this->set(compact('order'))
}

因此,我有一个默认翻译文本的表单。

代码语言:javascript
代码运行次数:0
运行
复制
 <?= $this->Form->control('email_message', [
            'type' => 'textarea',
            'rows' => 15,
            'help' => sprintf('Email will be sent to %s', h($order->contact_email)),
            'default' => __('pickup_mailtext')
        ]) ?>

不,我已经进去了

代码语言:javascript
代码运行次数:0
运行
复制
en_EN
  default.po
代码语言:javascript
代码运行次数:0
运行
复制
msgid "pickup_mailtext"
msgstr "This is the old pickup mailtext"

如果我把它改成

代码语言:javascript
代码运行次数:0
运行
复制
msgid "pickup_mailtext"
msgstr "This is the NEW pickup mailtext"

什么都没变。我已经删除了永久目录中的所有内容。在Config/app.php中,默认语言设置为no_NO,但正如我前面提到的,这个字符串在en_EN下面

在……下面

代码语言:javascript
代码运行次数:0
运行
复制
no_NO
  default.po

有:

代码语言:javascript
代码运行次数:0
运行
复制
msgid "pickup_mailtext"
msgstr ""

我也注意到了,这个字符串在

代码语言:javascript
代码运行次数:0
运行
复制
en_EN
  default.mo

但是,如果我试图修改它,就会得到内部服务器错误。

因此,我的问题是: 1.如何使这一翻译工作?为什么这个字符串不改变? 2.如果默认语言设置为no_NO,那么为什么翻译是用en_EN进行的?为什么要翻译而不是空? 3.如何清除这些.mo文件?

谢谢

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-05-25 09:55:23

.mo文件是各自.po文件的编译后的二进制版本,您不能只使用文本编辑器来修改它们,您需要重新编译.po文件,使用像这样的程序,或者使用像这样的GUI程序。

默认情况下,CakePHP会更喜欢.mo文件而不是.po文件(前者解析起来通常更快),也就是说,如果存在.mo文件,它将被使用,而不是使用同名的可能的.po文件,所以如果只更改.po文件,就不会发生任何事情,因为没有使用该文件。

如果更改config/app.php中的默认区域设置没有任何效果,那么您的应用程序中的其他地方可能会更改区域设置。检查视图模板中的\Cake\I18n\I18n::getLocale(),以确定在该点上实际使用的区域设置,并在\Cake\I18n\I18n::setLocale() (vendor/cakephp/cakephp/src/I18n/I18n.php)中设置一个断点,或记录堆栈跟踪,以从代码中设置区域设置的位置。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/61999642

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档