這段代碼來自文件server\addons\base\res\ res_user.py,它先從對象池取得對象'ir.model.data',該對象負責存取數據表ir_model_data。而後調用該對象的方法_get_id取得admin用戶的user_id,再讀入admin對應的user記錄的id。
視圖(View):負責顯示數據,最常見的視圖是列表視圖和表單視圖。此外,還有看板、日曆、甘特圖、圖形、流程圖等幾種視圖,不同的視圖以不同的方式展示數據。本章主要介紹列表和表單,另外幾種視圖以後介紹。
菜單(Menu):這個很直觀,不用介紹了。
動作(Action):用戶操作系統時(如點擊菜單、點擊畫面右邊的工具條上的按鈕等),系統的響應動作。一個Action包含一個對象,包含若干個視圖,通常每個Action都包含列表和表單兩個視圖。當Action被觸發時,相應的視圖被調出,展示相應的對象的數據。Action有多種類型,最常見的是Act_Window(窗口類型),窗口類型跳出一個窗口以顯示數據。此外還有Report(報表)、Wizard(嚮導)等類型。本章主要介紹窗口類型。
上述概念間的關聯關係,參見如下操作序列圖:
例如,當打開一個財務憑證時(對象account.invoice),客戶端發生的動作鏈是:
1) 激發一個Action,Action要求打開account.invoice對象。Action中包含了對象、視圖、域條件(Domain, 如只顯示未支付的憑證)等數據。
2) 客戶端詢問服務端(通過XML-RPC協議)憑證對象定義了哪些視圖,以及應顯示什麼數據。
3) 客戶端呈現視圖,展示數據.