CakePHP缓存i18n转换
当我忘记在项目视图的某处翻译某些内容时,我会更改文件/app/Locale/por/LC_MESSAGES/default.po,并将其发送回服务器 但最重要的是,这个“新翻译”需要几个小时才能被查看,简言之:我只是发送文件,清理缓存和浏览器CakePHP,按F5,然后什么也没发生 为什么 [编辑]CakePHP缓存i18n转换,php,cakephp,caching,internationalization,Php,Cakephp,Caching,Internationalization,当我忘记在项目视图的某处翻译某些内容时,我会更改文件/app/Locale/por/LC_MESSAGES/default.po,并将其发送回服务器 但最重要的是,这个“新翻译”需要几个小时才能被查看,简言之:我只是发送文件,清理缓存和浏览器CakePHP,按F5,然后什么也没发生 为什么 [编辑] <?php echo $this->Form->input('Item.0.description', array('label' => false, 'class' =&
<?php echo $this->Form->input('Item.0.description', array('label' => false,
'class' => 'span12', 'div' => array('class' => 'span7'), 'rows' => 3,
'placeholder' => __('Type the description'))); ?>
我发现了一个奇怪的解决方案: 我设置(app/Config/core.php) 按F5。。。等待而且有效。 后来,我回来了
Configure::write('debug', 0);
再次按F5键,即可工作
为什么??我不知道。要强制更新语言,您可以清除
/tmp/cache
目录中的持久化和模型目录。如果启用了视图缓存,则还必须清除视图
当debug
设置为2
(这是在开发过程中使用框架的值)并且持久性
目录填充了新的缓存文件时,缓存将被禁用,每次加载视图时都会覆盖旧的缓存文件。因此,debug
开关和随后的浏览器刷新可能会为您清除旧语言文件。即使Configure::write('debug',2)代码>我建议删除包含翻译的远程文件夹,使用浏览器刷新(声明不再翻译任何内容),然后重新加载翻译文件夹
这样对我来说非常好。所有缓存(app/tmp/)和浏览器缓存。谢谢我的朋友。正是这样!在linux上,此命令可能很方便(可以从应用程序目录运行)find app/tmp/cache-type f-delete
-它将从缓存中删除所有文件,因为打开调试会更改默认缓存持续时间。@AD7six是的,是这样吗。谢谢,先生!很好用!谢谢
Configure::write('debug', 0);