Drupal.t 不工作

今天同事遇到一个问题 Drupal.t 不翻译. Drupal.locale里面也没东西

console.dir(Drupal.locale)

Drupal.locale生成原理

在刷新缓存的时候会执行 _locale_invalidate_js()(modules/locale/locale.module) 去生成JS的标识:refresh: 保存在variable中: javascript_parsed
最后执行:_locale_rebuild_js()(includes/locale.inc)函数去生成相应的JS也就是 Drupal.locale.

最后解决办法

最后我手动在devel中运行_locale_rebuild_js(),发现在sites/defailt/files/languages中并没有生成。 好吧,目录没权限,改了权限以后一切正常