odoo-qweb

QWeb标签各种用法与说明。

模板中的标签统一都是以"t-"开始的。

t-name 用于指明模板的名称

t-extend 用于指明该模板是继承自另外哪一个模板,后面会带父模板的名称,如:t-extend=“Login" (此写法是在原模板上做拓展延伸)

t-jquery 一个jQuery的选择器,后面指明选择器的定义,如:t-jquery=".oe_logiin" (选择class 元素为 oe_logiin 的节点)

t-operation 一般跟在t-jquery后面,指明选择器找到元素后执行的动作,其值有:append(追加)、replace(替换)等。

t-if 用于指明元素在页面产生的条件,后面是带一个javascript的表达式,返回True或False

t-att-### 用于指明一个元素的属性值,###是元素的属性名称,如:t-att-value="javascript表达式"

t-foreach 用于指明一个循环调用,后面一般带的是一个数组

t-as 用于取得循环中的单个值,与t-foreach搭配使用,后面带的是一个变量名,可以循环中使用变量取值

t-esc 用于一个文字输出

t-call 用于调用另外模板,后面带一个模板的名称

t-set 用于设定一个变量,后面带变量的名称,一般跟t-value搭配使用

t-value 用于指定某个变量或元素的值

日期格式化:

<p t-field="doc.date_order" t-field-options='{"format": "y MMMM dd"}'/>

实例

<img t-if="res_company.logo" t-att-src="'data:image/png;base64,%s' % res_company.logo"
     style="max-height: 45px;"/>

一维码显示

<img t-att-src="'/report/barcode/?type=%s&amp;value=%s&amp;width=%s&amp;height=%s' % ('Code128', doc.name, 200, 45)"/>

二维码显示

<img t-att-src="'/report/barcode/?type=%s&amp;value=%s&amp;width=%s&amp;height=%s' % ('QR', doc.name, 200, 200)"/>
上一篇:odoo 14富态文本编辑器


下一篇:odoo dbfilter,db_name 的配置,指定多个数据库