odoo開發筆記 字段追蹤,訊息通知機制

2022-03-29 05:37:24 字數 1654 閱讀 6421

odoo有著強大的訊息記錄、通知機制;

實際開發中,常常會有客戶的需求,頁面上form檢視中的某些欄位不允許反覆修改,

假如有的使用者修改了,惡意搞壞,往往容易給公司利益造成損失,或破壞,那麼如何有效的記錄相關使用者的操作,

提供一定的安全審計功能?

別擔心,odoo已經為我們考慮到了!!!

下面我們就來介紹下,

首先,先保證整體基本的訊息記錄功能,兩個地方需要修改,模型和form檢視

在你需要訊息記錄的模型申明中,新增如下紅色部分**:

class

testmodle(models.model):

"""模型名稱

"""_name = '

test.test_model'#

定義 模型名(類名) 必寫

_rec_name = '

name'#

定義 模型引用時 顯示的預設字段 非必寫

_description = '

test model'#

定義資料庫中的表名 非必寫_inherit = ['mail.thread', 'ir.needaction_mixin']#

整合訊息模型 增加訊息記錄通知功能

在相應的form檢視內部下方,增加如下紅色**:

然後在想要追蹤的字段的模型定義中增加如下屬性:

class

testmodle(models.model):

"""模型名稱

"""_name = '

test.test_model'#

定義 模型名(類名) 必寫

_rec_name = '

name'#

定義 模型引用時 顯示的預設字段 非必寫

_description = '

test model'#

定義資料庫中的表名 非必寫

_inherit = ['

mail.thread

', '

ir.needaction_mixin

'] #

整合訊息模型 增加訊息記錄通知功能

name = fields.char(string="

name",)

inout = fields.selection(string="

inout

", selection=[('

i', u'

進口'), ('

e', u'

出口'), ], track_visibility='always'

,) contract_no = fields.char(string="

contract no

",track_visibility='onchange',)

上面的兩種寫法:track_visibility='always' 和 track_visibility='onchange'

修改完成之後,重啟odoo服務,公升級相應模組!對上述字段進行手動修改,儲存的時候,驗證效果!!!

實現效果:

感興趣的小夥伴,可以參考:

odoo開發筆記 日期or時間字段給定預設值

開發中經常有這樣的場景,需要給某個日期或者時間型別的字段預設值 總結一下,實現方式,大概有3種寫法 1 odoo自帶模型字段 fields.可以在odoo模型定義中進行設定,如下樣例提供參考 test data fields.date string u 日期 default fields.date....

odoo開發筆記 日期操作

日期格式化字串 日期格式化字串 date format y m d 日期時間格式字串 datetime format y m d h m s 日期時間格式字串 包含毫秒 datetime format y m d h m s.f odoo中賦值當前日期 odoo物件中欄位賦值為當前日期 字串 fie...

高通開發筆記

1.cit暗碼 00 564548 889 2.修改tp方向 echo 1 sys class input input0 device flipx 3.修改手機方向解析度 編譯 device qcom d801 system.prop ro.sf.lcd density 120 沒有就自己新增,12...