【问题标题】:How to add more default empty rows in list view?如何在列表视图中添加更多默认空行?
【发布时间】:2021-11-17 04:44:03
【问题描述】:

我需要在列表视图中添加更多默认的空行。

现在,它只在新记录上提供 4 个空行。但是,我需要再添加 10 个默认空行。

这是因为我使用 css 增加了表格的高度。

.o_list_view .o_list_table {
    height: 800px;
}

结果是它仍然默认有 4 行,但每行的高度为表格高度的 25%。因此,我需要在其中添加一些行,以便它们的高度再次适合新的表格高度。

或者其他解决方案,如果可能的话,取消表格中行的自动高度调整,使其不会根据表格高度进行缩放。

任何一种解决方案都可以接受。

【问题讨论】:

标签: odoo odoo-14


【解决方案1】:

只要行的长度小于4,Odoo 就会尝试添加一个空行。

要添加更多默认空行,您可以更改ListRenderer _renderBody

_renderBody: function () {
    var self = this;
    var $rows = this._renderRows();
    while ($rows.length < 14) {
        $rows.push(self._renderEmptyRow());
    }
    return $('<tbody>').append($rows);
},

还可以在tree标签中设置empty_rows属性来定义空行数:

XML

<tree string="" editable="bottom" empty_rows="4">  

JavaScript

var ListRenderer = require('web.ListRenderer');

ListRenderer.include({
    _renderBody: function () {
        var self = this;
        var empty_rows = 4;
        if (self.arch && self.arch.attrs.empty_rows) {
            empty_rows = self.arch.attrs.empty_rows;
        }
        var $rows = this._renderRows();
        while ($rows.length < empty_rows) {
            $rows.push(this._renderEmptyRow());
        }
        return $('<tbody>').append($rows);
    },
});

查看Assets Management,了解如何将上述代码添加到web.assets_backend bundle 和Javascript Module System 以创建 JavaScript 模块

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-07-30
    • 2014-05-07
    • 2013-12-26
    • 2013-05-23
    • 1970-01-01
    • 2020-08-03
    • 1970-01-01
    • 2014-01-21
    相关资源
    最近更新 更多