Skip to Content
Menú
This question has been flagged


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


Avatar
Descartar
Best Answer

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

Avatar
Descartar
Autor

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

Best Answer

<tree>

    <field name="name"/>

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

</tree>


Avatar
Descartar
Best Answer

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();
});
},
});
Avatar
Descartar
Related Posts Respostes Vistes Activitat
2
de gen. 24
3509
0
de des. 23
1276
2
d’ag. 23
3537
0
de maig 23
117
1
de maig 23
6108