ODOO 新API修飾符

2021-07-24 02:12:27 字數 801 閱讀 3171

@api.one

one裝飾符自動遍歷記錄集,把self重新定義成當前記錄。注意,返回值是乙個list. web client有可能不支援該裝飾。這時應該用@api.multi修飾函式,函式中可能還需要條用self.ensure_one()

。@api.multi

self就是當前記錄集。

@api.model

該裝飾會將舊的api函式轉換成帶有裝飾符的新api函式符號,使得**可以平滑遷移。

該裝飾確保被修飾的函式在create, write, unlink時被呼叫。當約束條件滿足時,函式應該raise 相應的異常警告訊息

@api.depends

('name'

,'an_other_field'

)def

afun

(self

):pass

依賴的任一字段變化時(orm or form),觸發該函式執行。

@api.onchange

('fieldx'

)def

do_stuff

(self

):if

self

.fieldx==x

:self

.fieldy

='toto'

例子中self是指form中的記錄,當在on_change上下文時,所有的工作都是在快取中進行,所以你可以在函式中直接修改記錄集而不用擔心會修改資料庫, 這是和depends的最大區別。函式返回時將快取和記錄集中的差異返回給form.

保證返回值的統一。將返回基於原始返回值指定model的記錄集。

修飾符 許可權修飾符

四種形式許可權修飾符的訪問情況 publicprotected不寫private 同乙個類中 四種都可以 同一包中的不同類 除了private剩下都可以 不同包下的子類 public protected 可以 不同包下的不同類 只有public可以 許可權修飾符 public protected 預...

C 修飾符 類修飾符和成員修飾符

c 修飾符之類修飾符 public internal partial abstract sealed static internal 本程式集內的成員可以訪問。partial 部分類,可以將乙個類分成幾部分寫在不同檔案中,最終編譯時將合併成乙個檔案,且各個部分不能分散在不同程式集中。c 修飾符之成員...

java修飾符 abstract 修飾符

abstract 修飾符 abstract 修飾符可以用來修飾類和成員方法 用 abstract 修飾的類表示抽象類,抽象類位於繼承樹的抽象層,抽象類不能被例項化,即不允許建立抽象類本身的例項。沒有用 abstract 修飾的類稱為具體類,具體類可以被例項化。用 abstract 修飾的方法表示抽象...