首页 > 如何汉化 OpenERP 6.1 日历视图

如何汉化 OpenERP 6.1 日历视图

OpenERP 6.1 出来有个把月的时间了,感谢 OpenERP 中文社区的努力,目前 OpenERP 的各个模块中基本上没有了英文。

但是 OpenERP 6.1 的日历视图是一个 DHTMLX 公司出品的前端 Javascript 控件,跟后端的 Python 业务模块的翻译机制完全不同,所以到目前为止,在任何语言设置的 OpenERP 中都仍然保持着英文。虽然只是简单的 “Monday”和“April”之类的单词,但还是对整个 OpenERP 系统在国内的实施造成了一定的阻碍。

image

为了解决这一难题,通过 grep 的帮助,我在 OpenERP 的 dhtmlscheduler 控件的目录中找到了 locale_cn.js 的中文消息文件。通过这个文件我们可以知道,dhtmlscheduler 控件是支持多国语言字符串的。根据使用 jQuery UI 库的经验,造成日历视图没有本地化的原因很可能是 OpenERP 没有在其 HTML 页面中引入 locale_cn.js。所以,现在的问题就变成了找到 OpenERP 生成 HTML 页面的模板,然后加入对 locale_cn.js 脚本的引用。

根据上面的思路,通过 grep 我发现 OpenERP 6.1 的 Web 模块并没有使用传统的模板中引入 js 和 CSS 的模式,而是通过 __openerp__.py 文件的配置指定该模块所用到的 CSS、JS 等。

到这了,解决我们的问题就很简单了,直接用编辑器打开 openerp/addons/web_calendar/__openerp__.py,在系统原有的 'static/src/js/calendar.js' 行上方插入:'static/lib/dhtmlxScheduler/sources/locale_cn.js'。整个 __openerp__.py 文件如下所示:

{"name": "web calendar","category": "Hidden","description":"""OpenERP Web calendar view.""","version": "2.0","depends": ['web'],"js": ['static/lib/dhtmlxScheduler/codebase/dhtmlxscheduler_debug.js','static/lib/dhtmlxScheduler/codebase/ext/dhtmlxscheduler_minical.js','static/lib/dhtmlxScheduler/sources/locale_cn.js','static/src/js/calendar.js',],"css": ['static/lib/dhtmlxScheduler/codebase/ext/dhtmlxscheduler_ext.css','static/src/css/web_calendar.css'],'qweb' : ["static/src/xml/*.xml",],'active': True
}

翻译以后的日历视图界面:

image

需要注意的是修改了 __openerp__.py 后需要重新启动 OpenERP Server,还需要清空浏览器缓存,否则会遇到 Javascript 错误。

 

Have Fun!

转载于:https://www.cnblogs.com/oldrev/archive/2012/03/24/2415404.html

更多相关:

  • jdt可以做语法树分析,并且支持visitor模式对代码进行分析。跟pmd的分析方式一样,我们只要实现 visitor接口即可实现一个插件。 @Service("requestMappingInfoService")public class RequestMappingInfoServiceImpl implements Reques...

  • 1.静态方法 static:通常在一个类中定义一个方法为static,那就是说,无需本类的对象即可调用此方法 声明为static的方法有以下几条限制: (1)它们仅能调用其他的static方法。  (2)它们只能访问static数据。 (3)它们不能以任何方式引用this 或super。 class Simple {static v...

  • 类的静态构造函数也叫类型构造器,静态构造器,他调用的时刻由CLR来控制:CLR会选择如下时间之一来调用静态构造函数:      1,在类型的第一个实例创建之前,或类型的非继承字段或成员第一次访问之前。这里的“之前”,代表前后衔接的意思。这里的时刻是精确的!      2,在非继承的静态字段或成员第一次访问之前的某个时刻,具体时刻不定!...

  • 2019独角兽企业重金招聘Python工程师标准>>> django的settings中包含三个static相关设置项: STATIC_ROOT STATIC_URL STATICFILES_DIRS STATIC_URL 好理解,就是映射到静态文件的url,一般为/static/ STATICFILES...