Tùy biến canh lề cho List view
Trong Odoo, việc canh lề trong list view thường mặc định với các kiểu dữ liệu như sau:
- Char, Text, Datetime, Selection: Canh lề bên trái của cột
- Integer, Float: Canh lề bên phải của cột.
Đôi khi chúng ta muốn các kiều dữ liệu như Integer, Float canh lề bên trái hoặc giữa, vậy ta nên làm thế nào? Hãy làm theo tut dưới đây, bạn sẽ có thể canh lề một cách tùy ý theo ý muốn trong list view của odoo.
Bước 1:
Hãy sửa template của list view, thêm vào một class cho field cần tùy biến:
<record id="model_name_tree_view" model="ir.ui.view"> <field name="name">Model name tree view</field> <field name="model">model.name</field> <field name="arch" type="xml"> <tree string="Model view"> <field name="sequence"/> <field name="number_field_1" class="tmi-align-left/> </tree> </field> </record>
Ở đây tôi thêm class "tmi-align-left"
cho field number_field_1
có kiểu Integer
Bước 2:
Tạo và đăng ký một file css tùy biến cho hệ thống. Ví dụ tạo một file css có tên tmi.css
như sau:
.tmi-align-left { text-align: right!important; }
Tiếp đến ngay trong file khai báo cho list view phía trên, ta có thể thêm dòng code xml như sau:
<template id="assets_backend" name = "TMI extend css assets" inherit_id="web.assets_backend"> <xpath expr="." position="inside"> <link rel="stylesheet" href="/module_name/path_to/tmi.css"/> </xpath> </template>
Đoạn code trên khai báo bổ sung tập tin tmi.css
vào template web.assets_backend
Bước cuối:
Upload và Nâng cấp module và tận hưởng thành quả
Lưu ý:
Tút trên là cách làm dành cho người có trình độ nhất định và đã biết tạo, sửa một module trong odoo.
Cũng có cách khác có thể không đơn giản hơn nhưng được cái là không phải viết mã xml, viết thêm module cho odoo, đó là cách sửa trực tiếp vào database của odoo thông qua công cụ debug của chính Odoo. Cách này phức tạp nhưng là khả thi đối với các bạn là dân ngoại đạo. Tôi sẽ hướng dẫn cách này trong một bài viết khác.