Trong hệ quản trị phần mềm, việc lưu lại lịch sử thay đổi của dữ liệu là vô cùng quan trọng. Nó giúp chúng ta phục hồi, hoặc điều tra vấn đề khi gặp 1 sự cố về thay đổi dữ liệu 1 cách bất thường. Việc lưu lại lịch sử dữ liệu giúp chúng ta tìm được nguyên nhân, thời gian thay đổi và ai là người đã thao tác.
Trên odoo có 1 tính năng là Odoo Tracking lại lịch sử thay đổi dữ liệu của 1 field. Và hôm nay vinasupport.com sẽ giới thiệu với các bạn tính năng vô cùng hấp dẫn này của Odoo.
Bật tính năng tracking cho 1 model trên Odoo
Để model field có thể sử dụng được tính năng lưu lịch sử tracking chúng ta tạo model cần inherit 2 model là: mail.thread, mail.activity.mixin
from odoo import api, fields, models, _ class MyFamily(models.Model): _name = 'my.family' _description = 'My Family' _inherit = ['mail.thread', 'mail.activity.mixin']
Tạo 1 field với thuộc tính tracking trên Odoo
Bạn hãy set thuộc tính tracking=[True|False] khi bạn định nghĩa field đó. Nếu không không set tham số này thì mặc định nó là False
name = fields.Char("Name", required=True, tracking=True)
Hiển thị lịch sử thay đổi trên view của Odoo
Bước cuối cùng chúng ta hãy đặt đoạn code trên vào khu vực muốn hiển thị lịch sử thay đổi
<sheet> <!--your form view fields goes here--> </sheet> <div class="oe_chatter"> <field name="message_follower_ids" groups="base.group_user"/> <field name="activity_ids"/> <field name="message_ids"/> </div>
Nguồn: vinasupport.com