跳至內容
選單
此問題已被標幟


usually it shows the field right aligned. How to change it to left aligned. 


頭像
捨棄
最佳答案

Just add class="oe_left" to your field in view.

頭像
捨棄
作者

Thaks For Your Answaer, it works for data only, Iwant for the th i mean Heading, thanks in advance

最佳答案

<tree>

    <field name="name"/>

    <field name="amount" style="text-align:right;"/>

</tree>


頭像
捨棄
最佳答案

Through the JS, you can do it like this :

/** @odoo-module **/

import { patch } from "@web/core/utils/patch";
import { ListRenderer } from '@web/views/list/list_renderer';
import { onMounted, onPatched } from "@odoo/owl";

patch(ListRenderer.prototype, "align_left_area_size", {
setup() {
this._super(...arguments);

const alignAreaSizeLeft = () => {
const headers = document.querySelectorAll('div[name="one2many_field"] th[data-name="your_field"]');
const cells = document.querySelectorAll('div[name="one2many_field"] td[name="your_field"]');

headers.forEach((el) => {
el.classList.remove("text-end");
el.style.textAlign = "left";

const span_text_end = el.querySelector('span.text-end');
if (span_text_end) {
span_text_end.classList.remove("text-end");
span_text_end.style.textAlign = "left";
}

const span_o_list_number_th = el.querySelector('span.o_list_number_th');
if (span_o_list_number_th) {
span_o_list_number_th.classList.remove("o_list_number_th");
span_o_list_number_th.style.textAlign = "left";
}
});

cells.forEach((el) => {
el.classList.remove("o_list_number");
el.style.textAlign = "left";
});

document.querySelectorAll('div[name="room_ids"] th[data-name="area_size"] div.d-flex').forEach((div) => {
div.classList.remove("text-end");
div.classList.remove("flex-row-reverse");
});
};

onMounted(() => {
alignAreaSizeLeft();
});

onPatched(() => {
alignAreaSizeLeft();
});
},
});
頭像
捨棄
相關帖文 回覆 瀏覽次數 活動
2
1月 24
3569
0
12月 23
1321
2
8月 23
3616
0
5月 23
117
1
5月 23
6189