将总标签添加到树页脚odoo 12

时间:2020-09-09 16:33:46

标签: treeview odoo-12

我需要在树的最后一行上添加总计标签,最后一行用于求和值,如何编辑树的页脚?

view.xml

<xpath expr="//field[@name='field_list']/tree/field[@name='name']" position="after">
  <field name="field1" sum="Total Field 1"/>
  <field name="field2" sum="Total Field 2"/>
  <field name="field3" sum="Total Field 3"/>
</xpath>           

截屏

enter image description here

有没有一种方法可以编辑树的页脚?

1 个答案:

答案 0 :(得分:1)

列表页脚用于显示汇总(sumavg),并在ListRenderer的{​​{3}}中呈现。

方法文档字符串:

/**
     * Render the footer.  It is a <tfoot> with a single row, containing all
     * aggregates, if applicable.
     *
     * @private
     * @returns {jQueryElement} a <tfoot> element
     */

计算聚合的方法将检查字段类型,如果字段类型不是以下integerfloatmonetary之一,则计算将被忽略。

>

您可以更改_renderFooter,以便能够使用field属性在页脚中显示静态文本。

示例:

var ListRenderer = require("web.ListRenderer");
ListRenderer.include({
        _renderFooter: function () {
            var res = this._super();
            _.each(this.columns, function (column) {
               if(!('aggregate' in column) && column.attrs.text) {
                   res.find('.'+column.attrs.name).text(column.attrs.text);
               }
            });
            return res;
        },
});  

要添加上述代码,请查看_renderFooter文档。

要在相应列的页脚中显示文本,请在字段标签中设置text属性(如果该字段包含聚合,则文本将被忽略)。

<field name="total" text="Total"/>  
 
相关问题