码迷,mamicode.com
首页 > Web开发 > 详细

qweb

时间:2017-01-07 16:21:09      阅读:619      评论:0      收藏:0      [点我收藏+]

标签:web   分享   打包   com   使用   文件   技术分享   微软   渲染   

qweb odoo的模板系统, odoo系统中, 它有不同的用途和实现,

  • 一个是 web client widget 的渲染引擎, 它是通过 javascript实现的,也是 最早引入到 odoo系统的,在 OpenERP 最初引入 web client 加入的,现在使用 qweb2.js 这个 libaray 对模板进行 渲染
  • 另外用作 web pagereport、看板 等的模板引擎,它是 通过 python 实现的

       

   

web client 使用的 qweb template manifest 文件中的 qweb项目 进行定义,

技术分享

   

qweb 定义的 模板xml 将在 odoo启动的时候, 打包为 /web/webclient/qweb 资源, 例如

技术分享

   

打包的具体代码是

技术分享

   

通过 concat_xml 所有的 qweb 打包合并在一起,提供给 webclient 使用。

   

   

web page reportkankan 归根到底 都是 ir.ui.view 其中 reporttemplate 均是 ir.ui.view 的别名, 他们 都是 通过标准的 data file 进行定义, 例如

技术分享

   

webclient_templates 定义了 web client 页面的骨架

技术分享

   

这些 data file 安装模块的时候, 被安装到 ir.ui.view 里面去, 例如

技术分享

   

因此, web page 的修改 可以直接 view 进行 修改

   

同样, report 的内容也是 装载如到 view 里面, 例如

技术分享

   

   

对于看板,也可以 签入 qweb 定义的 页面片段,例如

技术分享

   

qweb

标签:web   分享   打包   com   使用   文件   技术分享   微软   渲染   

原文地址:http://www.cnblogs.com/odoouse/p/6259486.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!