qweb
qweb 是 odoo的模板系统,
在 odoo系统中,
它有不同的用途和实现,
- 一个是 web client 的 widget 的渲染引擎,
它是通过 javascript实现的,也是
最早引入到 odoo系统的,在 OpenERP 最初引入 web client 时
加入的,现在使用 qweb2.js 这个 libaray 对模板进行
渲染 - 另外用作 web page、report、看板
等的模板引擎,它是
通过 python 实现的
web client 使用的 qweb template 在 manifest 文件中的 qweb项目
进行定义,
qweb 定义的
模板xml 将在 odoo启动的时候,
被
打包为 /web/webclient/qweb 资源,
例如
打包的具体代码是
通过 concat_xml 将
所有的 qweb 打包合并在一起,提供给 webclient 使用。
web page 、report、kankan 归根到底
都是 ir.ui.view ;
其中 report、template 均是 ir.ui.view 的别名,
他们
都是
通过标准的 data file 进行定义,
例如
webclient_templates 定义了 web client 页面的骨架
这些 data file 在
安装模块的时候,
被安装到 ir.ui.view 里面去,
例如
因此,
对 web page 的修改
可以直接
在 view 进行
修改
同样, report 的内容也是
装载如到 view 里面,
例如
对于看板,也可以
签入 qweb 定义的
页面片段,例如
qweb的更多相关文章
- QWeb、Widget继承
对于Odoo前端来说,所有的js对象都是继承自openerp.web.Class这个类,然后由此派生出Widget,由Widget派生出其他诸如View等可视化部件,结合QWeb,我们可以实现对现有部 ...
- 8.0 Qweb 报表编写步骤
8.0 采用的是Qweb报表,摒弃了7.0中的RML报表. 1.首先在xml文件中注册一个报表: <report id="qweb_test_report" model=&q ...
- OpenERP QWeb模板标签笔记
在OpenERP中,通过QWeb来对模板进行渲染后加载到浏览器中,而模板中有许多的标签来定制各种需求变化,在这里记录学习过程中碰到的标签定义,以方便查询. 模板中的标签统一都是以"t-&qu ...
- (21)odoo中的QWeb模板引擎
-----------------更新时间18:13 2016-04-05 星期二-----------------* 概述 QWeb是odoo主要模板引擎,采用xml表述,最后生成HTML文件 ...
- Odoo Qweb报表css丢失问题
有时候我们恢复过来的数据库在打印原来系统的Qweb报表的时候会发现所有的样式都丢失了,只打印内容出来. 这时候我们可以进入Setting/ Technical / Paramters / System ...
- Qweb报表中的Reload from Attachment参数
通过继承的方式修改了Qweb报表却发现没有生效,经查,其原因在于报表的设置中勾选了 Reload from Attachment 选项. 将本选项取消选中即可生效.
- odoo qweb 记录
默认的打印功能修改,比如在动作中的打印功能: 继承抽象模型 models.AbstractModel 重写 _get_report_values class PayslipDetailsReportI ...
- odoo Q-web
文档链接于:https://www.odoo.com/documentation/8.0/reference/qweb.html QWeb is the primary templating engi ...
- openerp QWeb
1.web 模块 注意,OpenERP 模块中 web 部分用到的所有文件必须被放置在模块内的 static 文件夹里.这是强制性的,出于安全考虑. 事实上,我们创建的文件夹 CSS,JS 和 XML ...
随机推荐
- ListView 中的ImageView Button
1.ListView 中的ImageView Button的点击事件会屏蔽掉ItemView的点击事件 原因是ImageView Button在回执过程中会抢夺item的焦点 解决办法:在xml中添 ...
- 关于asp.net 开发的小技巧—让传值对象化
前端:前端 定义一个对象, 传值时实例此对象,序列化成json字符串 代码如下: 定义js对象: ///定义一个查询条件对象 var SearchCondition=function(){ this. ...
- 读取excel数据,并统计输出Frame版本
package cn.cnnic.ops; import java.awt.Button; import java.awt.FileDialog; import java.awt.FlowLayout ...
- xml对象的序列化和反序列化
对象序列化: /// <summary> /// 将一个对象序列化为XML字符串 /// </summary> /// <par ...
- XidianOJ 1057 卡尔的技能
题目描述 dota中的英雄卡尔的技能说明如下,他拥有3种不同的元素(冰,雷,火),每次他需要释放技能的时候,他要先选择3次元素来决定释放技能的类型(比如,他可以选择火+火+火或冰+雷+火等等),生成技 ...
- [ 转 ] scrapy 中解决 xpath 中的中文编码问题
1.问题描述: 实现定位<h2>品牌</h2>节点 brand_tag = sel.xpath("//h2[text()= '品牌']") 报错:Value ...
- 最简单的JS图片轮播
var arr=new Array(); arr[1]="";//放图片地址 arr[2]=""; arr[3]=""; var no=0; ...
- 制作一个简洁的jquery插件
原文:http://mp.weixin.qq.com/s?__biz=MzAxMzgwNDU3Mg==&mid=401571467&idx=1&sn=08cb00963e6ef ...
- 9.5.8 Optimizing InnoDB Disk I/O
如果你数据库设计以及sq操作都是最佳实践,但是你数据库仍然被较重的io活动拖累的较慢,那么试一试看看top或者windows的任务管理器,cpu使用率和工作量低于70%,那么或许是您的硬盘较慢. 1 ...
- laravel框架学习
在聊技术之前,我们首先谈谈研究生的生活现状.进入到研究生忙碌的生活中,研究生是这么一个群体,外界对研究生的爱称是"研究僧",为什么我自己会觉得会是爱称.因为研究僧说的是研究生对自己 ...