Odoo - 结合 one2many 中的两个字段标题
Odoo - Combine two fields heading in one2many
我正在使用 odoo 10-e。我创建了自定义模块,在该模块中我想显示这样的 one2many 记录
----------------
| Long Cell |
----------------
| 1 | 2 |
----------------
现在默认情况下每列都有自己的标题,实际上是 string=
值。我想覆盖默认行为。
首先创建扩展 ListView 模板的 xml 文件,以在基本列表视图模板中添加 colspan 功能。
colspan.xml
<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">
<div t-extend="ListView">
<t t-jquery="table" t-operation="replace">
<table class="o_list_view table table-condensed table-striped">
<t t-set="columns_count" t-value="visible_columns.length + (options.selectable ? 1 : 0) + (options.deletable ? 1 : 0)"/>
<thead>
<tr t-if="options.header">
<t t-foreach="columns" t-as="column">
<th t-if="column.meta">
<t t-esc="column.string"/>
</th>
</t>
<th t-if="options.selectable" class="o_list_record_selector" width="1">
<div class="o_checkbox">
<input type="checkbox"/><span/>
</div>
</th>
<t t-set="col" t-value="0"/>
<t t-foreach="columns" t-as="column">
<t t-if="col == 0">
<th t-if="!column.meta and column.invisible !== '1'" t-att-data-id="column.id"
t-attf-class="text-center #{((options.sortable and column.sortable and column.tag !== 'button') ? 'o_column_sortable' : '')}"
t-att-width="column.width()" t-att-colspan="column.colspan" >
<t t-set="col" t-value="column.colspan or 1"/>
<t t-if="column.tag !== 'button'"><t t-raw="column.heading()"/></t>
</th>
</t>
<t t-if="col !== 0" t-set="col" t-value="col - 1"/>
</t>
<th t-if="options.deletable" class="o_list_record_delete"/>
</tr>
</thead>
<tfoot>
<tr>
<td t-if="options.selectable"/>
<td t-foreach="aggregate_columns" t-as="column" t-att-data-field="column.id" t-att-title="column.label">
</td>
<td t-if="options.deletable" class="o_list_record_delete"/>
</tr>
</tfoot>
</table>
</t>
</div>
</template>
加入__manifest__.py
...
'qweb': [
"static/src/xml/colspan.xml",
],
...
就是这样。
您可以在任何领域使用 colspan。在列表视图中。
例如
<tree>
<field name="any_field" colspan="2"/>
</tree>
试试吧。
我希望这对你有用。
我正在使用 odoo 10-e。我创建了自定义模块,在该模块中我想显示这样的 one2many 记录
----------------
| Long Cell |
----------------
| 1 | 2 |
----------------
现在默认情况下每列都有自己的标题,实际上是 string=
值。我想覆盖默认行为。
首先创建扩展 ListView 模板的 xml 文件,以在基本列表视图模板中添加 colspan 功能。
colspan.xml
<?xml version="1.0" encoding="UTF-8"?>
<templates id="template" xml:space="preserve">
<div t-extend="ListView">
<t t-jquery="table" t-operation="replace">
<table class="o_list_view table table-condensed table-striped">
<t t-set="columns_count" t-value="visible_columns.length + (options.selectable ? 1 : 0) + (options.deletable ? 1 : 0)"/>
<thead>
<tr t-if="options.header">
<t t-foreach="columns" t-as="column">
<th t-if="column.meta">
<t t-esc="column.string"/>
</th>
</t>
<th t-if="options.selectable" class="o_list_record_selector" width="1">
<div class="o_checkbox">
<input type="checkbox"/><span/>
</div>
</th>
<t t-set="col" t-value="0"/>
<t t-foreach="columns" t-as="column">
<t t-if="col == 0">
<th t-if="!column.meta and column.invisible !== '1'" t-att-data-id="column.id"
t-attf-class="text-center #{((options.sortable and column.sortable and column.tag !== 'button') ? 'o_column_sortable' : '')}"
t-att-width="column.width()" t-att-colspan="column.colspan" >
<t t-set="col" t-value="column.colspan or 1"/>
<t t-if="column.tag !== 'button'"><t t-raw="column.heading()"/></t>
</th>
</t>
<t t-if="col !== 0" t-set="col" t-value="col - 1"/>
</t>
<th t-if="options.deletable" class="o_list_record_delete"/>
</tr>
</thead>
<tfoot>
<tr>
<td t-if="options.selectable"/>
<td t-foreach="aggregate_columns" t-as="column" t-att-data-field="column.id" t-att-title="column.label">
</td>
<td t-if="options.deletable" class="o_list_record_delete"/>
</tr>
</tfoot>
</table>
</t>
</div>
</template>
加入__manifest__.py
...
'qweb': [
"static/src/xml/colspan.xml",
],
...
就是这样。
您可以在任何领域使用 colspan。在列表视图中。
例如
<tree>
<field name="any_field" colspan="2"/>
</tree>
试试吧。
我希望这对你有用。